Шаг 13.
Технология ADO.
Пример. Использование метода GetTableNames

    На этом шаге мы рассмотрим пример приложения, иллюстрирующего использование метода GetTableNames.

    Рассматриваемое приложение позволяет с помощью метода GetTableNames компонента AdoConnection1, получить имена всех таблиц базы данных. Имена таблиц помещаются в список ListBox1 при нажатии на кнопку "Показать таблицы". Обработчик этого события имеет следующий вид:

   procedure TForm1.Button1Click(Sender: TObject);
   Begin
     AdoConnection1.GetTableNames(ListBox1.Items);
   End;
Приложение имеет следующий вид:


Рис. 1. Приложение в работе

    При нажатии на кнопку "Посмотреть выбранную таблицу" таблица, выделенная в списке ListBox1 отображается в сетке DBGrid1, при этом используется компонент-набор ADODataSet1. Если в списке ListBox1 не выделена ни одна таблица, то выводится соответствующее сообщение.

    Обработчик нажатия кнопки "Посмотреть выбранную таблицу" имеет следующий вид:

   procedure TForm1.Button2Click(Sender: TObject);
   var
      i : Byte;
      Fl : Boolean;      
   Begin
      Fl:=False;
      if (ListBox1.items.Count=0)
      then MessageDlg('Нет таблиц!',mtInformation,[mbOK],0)
      //Если в списке ListBox1 нет таблиц, то выводим соответствующее сообщение
      else
         Begin
           for i:=Listbox1.items.Count-1 downto 0 do
             if Listbox1.Selected[i] then //Проверяем, какой элемент списка выделен
              Begin
                 Fl:=True;
                 AdoDataSet1.Close; //Закрываем набор данных
                 AdoDataSet1.CommandText:=St+Listbox1.items[i]; //Создаем команду
                 ADODataSet1.Open; //Открываем набор данных
              End;
             if (not Fl)
             then MessageDlg('Таблица не выбрана!',mtInformation,[mbOK],0)
         End;
   End;

    Cвойство CommandText компонента AdoDataSet1 формируется из строки St и названия таблицы, которое берется из списка ListBox1. Строка St получает значение "select * from" во время создания формы:

   procedure TForm1.FormCreate(Sender: TObject);
   Begin
    st:='select * from ';
   End;

    При уничтожении формы ADO-набор закрывается:

   procedure TForm1.FormDestroy(Sender: TObject);
   Begin
      AdoDataSet1.Close;
   End;

    Текст этого приложения можно взять здесь. Файлы базы данных, используемой в приложении можно взять здесь.

    На следующем шаге мы рассмотрим пример приложения, осуществляющего сортировку записей.




Предыдущий шаг Содержание Следующий шаг