Основы проектирования приложений баз данных

       

Класс TTABLE


Компонент типа TTable используется для доступа к базам данных посредством определения источника данных DSN и имени таблицы базы данных. При этом допускается выбор всех полей таблицы или только части полей, а также задание фильтра, определяющего, какие строки таблицы будут доступны.

Компоненты типа TTable могут использовать все свойства и методы, наследуемые от класса TDataSet, а также свойства и методы класса TTable для набора данных, включая следующие:

  • DatabaseName - свойство, определяющее имя источника данных DSN;
  • CanModify - свойство, определяющее, может ли приложение выполнять вставку, редактирование и удаление записей в таблице;
  • DefaultIndex - свойство, определяющее, должны ли данные в таблице быть упорядочены при ее открытии. Если значение свойства равно True (по умолчанию), то выполняется упорядочивание по первичному ключу или уникальному индексу;
  • IndexName - свойство, позволяющее определить вторичный индекс, используемый для сортировки открываемого набора данных;
  • Exclusive - свойство, позволяющее установить исключительный режим доступа к таблице (значение свойства должно быть определено до открытия таблицы);
  • MasterSource - свойство, определяющее имя компонента "источник данных" родительской таблицы для установления отношения между таблицами "родительская-дочерняя";
  • MasterFields - свойство, определяющее одно или несколько полей из родительской таблицы, служащих для связи с соответствующими полями данной дочерней таблицы (Это задает отношение между родительской и дочерней таблицами. Поля в списке разделяются точкой с запятой);
  • ReadOnly - свойство, позволяющее установить для таблицы режим доступа "только для чтения";
  • TableName - свойство, указывающее используемую таблицу базы данных;
  • RecNo - свойство, указывающее номер текущей записи набора данных;
  • FindKey - метод, выполняющий поиск значения или значений, перечисленных в списке, для ключевого поля;
  • FindNearest - метод, перемещающий курсор на запись, содержащую значение, наиболее близкое к указанному значению ключевого поля (поиск может выполняться как по одному значению, так и по нескольким, если используется составной индекс).

    Например:

    {Изменение значения в компоненте Edit1 автоматически перемещает позицию курсора в наборе данных Table1} procedure TForm1.FormActivate(Sender: TObject); begin Table1.DatabaseName := 'DBDemos'; Table1.TableName := 'Customer.db'; Table1.Active := True; Table1.IndexName := 'ByCompany'; {Ключевое поле} end; {Обработчик события OnChange (изменение значения) для компонента Edit1} procedure TForm1.Edit1Change(Sender: TObject); begin Table1.FindNearest([Edit1.Text]); {Выполнение поиска} end;

  • Locate - метод, используемый для поиска первого вхождения значения указанного поля или набора полей (если запись найдена, то она становится текущей).

    Например:

    with Table1 do Locate('F1;F2', VarArrayOf(['ABC', 123]), [loPartialKey]);



Содержание раздела