Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ЛАБА_Разработка баз данных с использованием технологии ADO

.doc
Скачиваний:
11
Добавлен:
01.04.2016
Размер:
40.45 Кб
Скачать

Лабораторная работа № 36

Разработка баз данных с использованием технологии ADO (ActiveX DataBase Objects)

Основной компонент для использования технологии ADO – таблица ADOTable (закладка ADO).

Для создания базы данных с необходимой структурой, установки ключевых полей и т.д. используется программа MS Access.

Для работы с таблицей необходимо установить нужное значение в свойстве ConnectionString. Для этого сделайте двойной щелчок на значении свойства, в появившемся окне нажмите кноку BuildДля доступа к базе данных Access выберите на закладке Поставщик данных пункт Microsoft Jet OLE DB Provider, а затем на закладке Подключение имя базы данных.

Затем установите имя таблицы в свойстве TableName. Сделать таблицу активной можно, установив значение свойства Active, равным True. Для прямого доступа к таблице установите свойство TableDirect равным True. Отметим, что перед изменением индекcов, задающих порядок записей, установкой фильтра и т.д. нужно закрыть таблицу, изменив свойство Active. Свойство Filter задает условие отбора записей. Включается фильтр при установке значения свойства Filtered равным True. Для сортировки записей выберите в свойстве IndexName имя индекса, заданного при определении структуры таблицы в Access, либо в свойстве IndexFieldName перечислите имена полей через точку с запятой.

Имена полей, содержащие пробелы, заключаются в квадратные скобки.

Перечислим основные методы компонента ADOTable:

  • Навигация по таблице: First./Last/ Next/ Prior/ MoveBy(N: integer) – переход на первую/ последнюю/ следующую/ предыдущую / запись c определенным номером N;

  • BOF:Boolean/EOF:Boolean – проверка, является ли текущей первая/последняя запись;

  • RecordCount:integer – количество записей;

  • RecNo: integer – номер записи;

  • Append – добавление записи;

  • AppendRecord(const Values: array of const) – добавление записи с определенными занчениями полей;

  • Cancelотмена изменений в текущей записи;

  • Deleteудаляет текущую запись;

  • Edit – переводит текущую запись в режим редактирования;

  • FieldByName(const FieldName: string): Tfield – возвращает поле по его имени;

  • Post – сохраняет изменения в текущей записи.

У компонента есть также векторное свойство по умолчанию, которое возвращает значения поля.Таким образом для доступа к полю с именем ‘Name’ можно использовать следующие выражения ADOTable1.FieldByName(‘Name’).Value или ADOTable1[‘Name’].

В таблицу можно добавлять вычисляемые поля в редакторе полей. Вычисление полей следует производить, обрабатывая событие OnCalcField компонента ADOTable.

Для связи таблицы с визуальными компонентами нужно добавить компонент источник данных DataSource (закладка DataAccess). В свойстве DataSet устанавливается имя компонента ADOTable.

Во всех визуальных компонентах доступа к данным в свойстве DataSource задается имя компонента DataSource.

Кратко перечислим визуальные компоненты (закладка DataControls).

DBGrid – представляет данные в виде таблицы. Свойство Columns содержит описание столбцов таблицы, которое можно визуально редактировать.

DBNavigator – панель кнопок для навигации по таблице. Свойство VisibleButtons содержит множество отображаемых кнопок.

DBText, DBEdit, DBMemo, DBListBox, DBComboBox, DBCheckBox, DBRadioGroup – компоненты отображения и редактирования данных, аналогичные ранее изученным компонентам, содержат дополнительно свойства DataSource и DataField, указывающие источник данных и имя поля.

Задание.

  1. Создать базу данных «Записная книжка», содержащую информацию о ваших друзьях и знакомых.

  2. Разработайте программу, отображающую информацию в виде таблицы и в виде формы, используя закладки – компонент PageControl (закладка Win32).

  3. Добавьте возможность задавать фильтр для отображения записей.

  4. Добавьте выбор поля, по которому происходит сортировка в таблице.

  5. Добавьте вычислимое поле, которое определяет возраст человека по дате его рождения.

2