Базы данных: Методические указания к выполнению практикума по одноименной дисциплине, страница 13

Пусть эта таблица описана с использованием Database Desktop и заполнена с использованием SQL Explorer.

На экранной форме размещаются компоненты Table1 (Data Access), DataSource1 (Data Access), DBGrid1 (Data Controls) и DBNavigator1 (Data Controls).

Первый компонент обеспечивает взаимодействие с таблицей БД. Для связи с требуемой таблицей нужно установить значения двух её свойств:

–  DataBaseName для указания пути к БД;

–  TableName для определения имени таблицы.

Имя таблицы лучше выбирать из раскрывающегося списка в поле значения свойства TableName. Если путь к БД задан правильно, то в этом списке отображаются главные файлы всех доступных таблиц.

После этого можно открыть набор данных, установив значение свойства Active в True.

Компонент DataSource1 – промежуточное звено между компонентом Table1 и визуальными компонентами DBGrid1 b DBNavigator1, с помощью которых пользователь взаимодействует с этой таблицей. Связь между Table1 и DataSource1 устанавливается через свойство посредника DataSet.

DBGrid1 – отображает содержимое таблицы БД в виде сетки, в которой столбцы соответствуют полям, а строки – записям таблицы. По умолчанию пользователь может просматривать и редактировать данные таблицы в сетке.

DBNavigator – позволяет пользователю перемещаться по таблице, редактировать вставлять и удалять записи. Эти компоненты связываются с нужным набором данных через свойство DataSource.

Использование кнопок DBNavigator позволяет реализовывать следующие действия:

First

переход к первой строке набора;

Last

переход к последней записи набора,

Prior

переход к предыдущей записи набора,

Next

переход к следующей записи набора,

Insert

включение пустой записи набора,

Delete

удаление текущей записи набора,

Edit

перевод текущей записи набора в режим редактирования,

Post

фиксация изменений в наборе в базе данных,

Cancel

завершение редактирования или вставки записи с возвращением набора в состояние имевшее место до перевода в соответствующий режим;

Refresh

регенерация отображения данных набора.

Уточнение списка полей и настройка параметров столбцов в TDBGrid

Очевидно, значение поля Cod необходимо для обеспечения уникальности записей в таблице и не несет никакой смысловой нагрузки. Поэтому данное поле лучше не показывать в составе столбцов DBGrid1. Для этого сформируем список полей таблицы Student. В Delphi имеется две возможности указать, какие из полей таблицы БД следует использовать в приложении для набора данных.

Первый способ состоит в использовании по умолчанию всех полей из таблицы БД. Этот способ используется по умолчанию всегда, если не выбрана вторая возможность.

Второй способ состоит в выборе подмножества полей таблицы БД, с которой ассоциирован набор данных. Для этой цели используется редактор полей НД, который позволяет включить в состав обрабатываемых для НД полей все поля или подмножество полей таблицы БД.

Выберем при помощи мыши компонент Table1 и нажмем правую кнопку мыши. В появившемся на экране всплывающем меню выберем пункт Field Editor. На появившемся списке редактора полей щелкнем правой кнопкой и во всплывающем меню выберем элемент Add Fields. Отметим при помощи мыши и кнопки Shift все поля, кроме Cod, и нажмем кнопку Add. Теперь список редактора полей будет включать все желаемые поля. Они же теперь присутствуют в составе столбцов компонента DBGrid1.

Определение для НД списка полей в редакторе полей приводит к тому, что для каждого добавленного таким образом поля в приложении Delphi автоматически создается компонент Tfield (поле набора данных). Каждый такой компонент по умолчанию именуется уникальным именем. В качестве первой составляющей имени берется имя НД, а в качестве второй составляющей имя поля в таблице БД. Например, Table1Zb будет идентифицировать поле «Номер зачетной книжки». Если в редакторе полей щелкнуть по имени соответствующего поля, в инспекторе объектов можно установить или изменить свойства поля, а также определить для него обработчики событий.