- •4.1. Основные понятия
- •4.2. Создание псевдонима базы данных
- •4.3. Создание таблиц базы данных
- •4.3.1. Объявление полей
- •4.3.2. Изменение языкового драйвера
- •4.3.3. Определение индексов
- •4.3.4. Определение ссылочной целостности между таблицами
- •4.3.5. Изменение структуры таблицы
- •4.4. Открытие и сохранение таблицы
- •4.5. Дополнительные утилиты
- •5.1. Взаимодействие классов, обеспечивающих доступ к таблицам
- •5.2. Классы tField и tTable: основное назначение и свойства
- •5.2.1. Класс tField: основное назначение и свойства
- •5.2.2. Класс tТable: основное назначение
- •5.2.3. Основные свойства класса tTable
- •5.2.4. Основные методы класса tTable
- •1) Доступ к таблице бд
- •2) Перемещение по записям таблицы
- •3) Режим редактирования таблицы
- •4) Доступ к значениям полей по имени
- •5) Добавление, удаление записей
- •6.1. Индексирование таблиц
- •6.2. Поиск записей
- •6.3. Поля компонента Table
- •6.4. Вычисляемые и связанные поля
- •Лекция 7. Запросы.
- •7.1. Запросы
- •7.3. Запросы с параметрами
- •Перед обращением к данному запросу необходимо задать значения двух параметров (типы данных: Country – String, Year- Short), а затем выполнить запрос:
- •7.4. Запросы с операторами delete, insert, update
5.2. Классы tField и tTable: основное назначение и свойства
5.2.1. Класс tField: основное назначение и свойства
Класс TTable обеспечивает доступ к конкретной таблице БД в целом, а класс TField обеспечивает программисту разнообразные возможности для работы с составляющими таблицы полями:
изменение значения поля текущей записи;
преобразование значения поля текущей записи от одного типа данных к другому;
проверка данных, вводимых пользователем в поле таблицы (для проверки ошибок ввода);
определение способов отображения или редактирования полей таблицы;
определение вычисляемых (calculated) полей на основе реальных полей БД;
определение связанных (lookup) полей (полей из другой таблицы БД).
Класс TField имеет множество свойств и методов. Рассмотрим только некоторые из них, обеспечивающие доступ к значениям полей таблицы:
AsBoolean, AsCurrency, AsDateTime, AsFloat, AsInteger, AsString, AsVariant - позволяют считывать значение из поля текущей записи или записывать в него значение с учетом указанных преобразований.
DataSet – связанная таблица или запрос.
EditMask – маска для форматирования значения поля.
FieldName – имя поля.
FieldNo – порядковый номер поля в связанной таблице или запросе.
LookupDataSet, LookupKeyFields LookupResultFields – только для связанных полей: таблица-справочник, список полей-ключей исходной таблицы, список полей-результатов таблицы-справочника (см. Лекция 6).
ReadOnly - определяет, можно ли поле редактировать (False) или нет (True).
Value – позволяет считывать значение из поля текущей записи или записывать в него значение.
Visible – определяет, можно отображать поле в визуальных компонентах (True) или нет (False).
К основным методам, знание которых необходимо при первоначальном изучении, относятся: аssign – копирует значения из поля связанного множества данных в свойство Value; сlear – очищает значение поля.
Из событий, связанных с классом TField, выделим событие OnChange, возникающее после изменения значения поля.
5.2.2. Класс tТable: основное назначение
Класс TTable наследует классу TDataSet и обеспечивает связь таблиц БД через объекты класса TDataSource с визуальными компонентами.
Объект класса представляет совокупность записей (набор данных, НД) из определенной таблицы БД. Класс выполняет следующие «роли»:
открытие и закрытие доступа к физической таблице БД;
отбор записей по заданному критерию (установка фильтров);
поиск записей;
установка индексов для последовательности перехода по таблице БД и ускорения поиска;
«навигация» по таблице БД;
добавление, удаление записей;
доступ к значениям полей текущей записи таблицы;
обеспечение связи с другими таблицами БД.
Для обеспечения связи приложения с таблицей БД необходимо установить на форме или в модуле данных приложения компонент Table, представляющий объект класса TTable, и задать необходимые значения его свойствам.
Для обеспечения этих функций используются разнообразные свойства и методы.
В дальнейшем будем предполагать, что компонент Table1 представляет таблицу с полями БД: Name (A), Name_Subject (A) и Mark (S), представляющую таблицу оценок по различным предметам, полученных студентами во время сдачи экзаменов в сессию.