
- •«Современные методы разработки программ». Этапы решения задачи
- •Постановка задачи.
- •Техническое задание
- •Разработка структуры базы данных
- •Написание кодов
- •Отладка и внедрение
- •База данных
- •Поля таблицы
- •Ключи и индексы.
- •Способы доступа к данным.
- •Связь между таблицами.
- •Создание базы данных
- •Псевдонимы базы данных
- •Создание таблицы
- •Задание полей
- •Задание свойств таблицы (Table properties)
- •Свойство Validity Checks – проверка правильности значений.
- •Свойство Table Lookup – таблица просмотра
- •Свойство Table Language – язык таблицы
- •Изменение структуры таблицы с помощью Database Desktop
- •Изменение в реестре для корректного отображения русского языка
- •О бзор компонентов Delphi, используемых для связи с бд.
- •Форма модуль данных Data Module
- •Компонент Database
- •Компонент Table
- •Свойства, которые доступны программным путем
- •Методы компонента tTable
- •События компонента tTable.
- •К омпонент Query
- •Свойство sql
- •Query и Параметры
- •К омпонент DataSource
- •Свойства
- •События
- •Компонент dbNavigator
- •Компоненты визуализации и управления данными со страницы Data Control Компонент dbGrid
- •События
- •Другие компоненты визуализации
- •П ример простейшего приложения с использованием компонента Table
- •Основы языка sql. Общие сведения.
- •Отбор данных из таблиц. Оператор выбора Select
- •Совокупные характеристики
- •Вложенные запросы.
- •Объединение таблиц.
- •Соединение union
- •Модификация записей Вставка записи
- •Values(‘Орлов’,’Александр’,’Иванович’,’м’,’23.04.1981’,’Гродно’)
- •Редактирование записи
- •Удаление записи
- •Операции с таблицами Создание таблицы
- •Изменение структуры таблицы
- •Удаление таблицы
- •Операции с индексами
- •Создание индекса
- •Удаление индекса
Задание свойств таблицы (Table properties)
Обратите внимание на правую часть окна (рис.4) выпадающий список Table properties.
Свойство Validity Checks – проверка правильности значений.
Required Fields –В этом индикаторе отмечаются те поля, значения которых обязательно должны содержаться в каждой записи. (Для нашего примера такими полями должны быть fam, im)
Minimum – минимальное значение. Это свойство полезно задавать для числовых полей (например для поля kyrs таблицы Obuch минимальное значение установите равным 1).
Maximum – максимальное значение. Это свойство полезно задавать для числовых полей (для поля kyrs установите равным 6).
Default – значение по умолчанию, т.е. при добавлении новой записи, автоматически в это поле проставится значение, указанное по умолчанию (для поля kyrs полезно задать значение по умолчанию 1, для поля sex – «м»).
Picture – шаблон для ввода данных (например шаблон номера телефона ##-##-##).
Assist – эта кнопка вызывает диалоговое окно, помогающее создать шаблон Picture.
Свойство Table Lookup – таблица просмотра
П
озволяет
связать с полем данной таблицы какое–то
поле другой, просматриваемой таблицы,
из которого будут браться допустимые
значения. Например, для того, чтобы в
таблицу Osndan в поле
Sex можно было бы вводить
только «м» или «ж» необходимо создать
таблицу Pol с одним
полем Sex строкового
типа. В этой таблице ввести только две
записи «м» и «ж». Затем открыть таблицу
Osndan в режиме конструктора,
выбрать свойство таблицы Table
Lookup,
нажать кнопку «Define».
В появившемся окне Table
Lookup (рис.5) в разделе
Fields выбрать поле Sex
и дважды щелкнуть мышью по нему (оно
отобразится в разделе Field
name). Затем в разделе
Lookup table
дважды щелкнуть по таблице Pol
(поле Sex должно появиться
в разделе Lookup field).
Свойство Secondary Indexes – вторичны индексы.
Этот раздел (рис.6) позволяет создать необходимые для дальнейшей работы вторичные индексы (первичный индекс создается по ключевым полям). Например, для таблицы Osndan можно создать индекс fio по полям fam, im и otch
В этом окне панель радиокнопок Index Options (опции индекса) позволяют установить следующие характеристики:
U
nique
-Установка этой
опции не позволяет индексировать
таблицу, если в
ней находятся дубликаты совокупности
включенных в индекс полей. Например,
для таблицы Pasp
для каждого из полей Ln
(личный номер ) npasp
(номе паспорта) можно создать уникальный
индекс, чтобы в таблицу нельзя было бы
ввести два одинаковых личных номера
или два одинаковых номера паспорта.
Descending - При установке этой опции таблица будет упорядочиваться по степени убывания значений (по умолчанию упорядочивание производится по степени нарастания значений).
Case Sensitive - При установке этой опции будет приниматься во внимание Регистр, в котором введены символы.
Maintained - Если эта опция установлена, то индекс обновляется при каждом изменении в таблице. В противном случае индекс обновляется только в момент связывания с таблицей или передачи в нее запроса. Это несколько замедляет обработку запросов. Поэтому полезно, включать эту опцию для обновляемых таблиц. Если таблица используется только для чтения, эту опцию лучше не включать.
Свойство Referential Integrity –целостность на уровне ссылок (рис.7).
Речь идет о способах, позволяющих обеспечивать постоянные связи между данными отдельных таблиц. Если устанавливается целостность на уровне ссылок между двумя таблицами, одна из которых – головная (родительская), а другая – вспомогательная (дочерняя), то во вспомогательной таблице указывается поле, которое может брать свои значения только из ключевого поля головной таблицы. Можно также указать операции, которые должны автоматически выполняться во вспомогательной таблице при изменении значения ключевого поля в головной таблице. Подобная целостность на уровне ссылок допустима не для всех типов таблиц, но в Paradox они предусмотрены. Прежде, чем создавать Referential Integrity, надо иметь обе связываемые таблицы – родительскую (главную) и дочернюю (подчиненную). Группа радиокнопок Update rule определяет, что будет, если в головной таблице вы удалите или измените значение ключевого поля, с которым связаны какие-то записи во вспомогательной таблице. Если Вы установили опцию Prohibit (именно эту опцию я рекомендую устанавливать), то Database Desktop просто не разрешит подобную операцию. Если же Вы установили опцию Cascade, то при смене значения ключевого поля в головной таблице аналогичные изменения автоматически произойдут в записях дочерней таблицы. А если вы удалите запись в головной таблице, содержащую некоторое значение ключевого поля, то во вспомогательной таблице автоматически удалятся все записи, связанные с этим значением ключевого поля. Установка индикатора Strict referential integrity в нижней части диалогового окна не позволит ранним версиям Paradox открыть и испортить таблицы, в которых введена целостность на уровне ссылок.
Д
ля
установки постоянной связи между
таблицами Opl и Osndan
необходимо открыть таблицу Opl
в режиме конструктора и выбрать свойство
таблицы Referential
Integrity, затем нажать
кнопку «Define». В появившемся
окне Referential Integrity
(рис.7) в разделе Fields
выбрать поле Tn и дважды
щелкнуть мышью по нему (оно отобразится
в разделе Child fields).
Затем в разделе Table
дважды щелкнуть по таблице Osndan
(поле Tn должно появиться
в разделе Parent’s
key). После подтверждения
откроется окно, в котором необходимо
ввести имя ссылки связи.
Свойство Password Security- пароли доступа.
Позволяет задать для таблицы пароли, и для каждого из них определить разрешенные операции, как для таблицы в целом, так и для отдельных ее полей.