- •Раздел 1. Проектирование баз данных. 2
- •Раздел 2. Разработка приложений для работы с Базами Данных в среде Delphi. 25
- •Раздел 1. Проектирование баз данных.
- •1.1. Основы построения баз данных. Модели данных.
- •1.1.1. Реляционная модель данных.
- •1.1.2. Нормализация базы данных.
- •1.2. Проектирование базы данных методом “сущность-связь”.
- •Раздел 2. Разработка приложений для работы с Базами Данных в среде Delphi.
- •2.1. Технология создания информационной системы.
- •2.1.1.Создание таблиц базы данных в Database Desktop.
- •2.1.2. Целостность базы данных.
- •Программа bde Administrator и модули данных.
- •Компоненты доступа и работы с данными. Тема: Наборы данных. Состояние и режимы наборов данных.
- •Тема: Объекты поля. Операции с полями.
- •Тема. Отображение и выбор значения поля.
- •Тема. Визуальные компоненты отображения записей из набора данных.
- •Закладки.
- •Тема. Ограничения на вводимые значения.
- •Тема. Сортировка набора данных.
- •Тема. Операции с таблицей базы данных.
- •Тема. Фильтрация записей.
- •Тема. Поиск записей.
- •Тема. Модификация набора данных.
- •Тема. Работа с отчетами
- •Отчет для связанных наборов данных
- •Составной отчет
- •Модули данных
- •Конструктор отчетов Rave Report
- •Реляционный способ доступа к данным.
- •Основные сведения о языке sql.
- •Оператор выбора Select.
- •Агрегирование и группирование записей.
- •Объединение таблиц.
- •Вложенные запросы.
- •Модификация записей.
- •Примеры баз данных
Раздел 2. Разработка приложений для работы с Базами Данных в среде Delphi.
2.1. Технология создания информационной системы.
2.1.1.Создание таблиц базы данных в Database Desktop.
Простую информационную систему можно создать с помощью программы Database Desktop, Конструктора формы и Инспектора объектов. Работа состоит из следующих этапов:
создание БД,
создание приложения.
Программа Database Desktop позволяет создавать таблицы, изменять их структуры, редактировать записи.
Создание таблицы:
выполнить команду FileNewTable;
в появившемся окне Create Table (Создание таблицы) задать тип (формат) таблицы, например, Paradox 7 и нажать Ok;
в окне Create Paradox 7 Table: (Untitled) определить структуру таблицы, задав описание хотя бы одного поля;
сохранить таблицу, нажав Save As..
При создании таблицы (или редактировании структуры таблицы) в окне Create Paradox 7 Table: (Untitled) можно выполнить следующие действия: описать поля, задать ключ, задать индексы, определить ограничения на значения полей, определить условия (ограничения) ссылочной целостности, задать пароли, задать языковый драйвер, задать таблицы для выбора значений.
Описание полей. Для каждого поля задаются:
имя – Field Name (до 25 символов)
тип – Type
размер – Size
Тип можно выбрать из списка, нажав Space или из контекстного меню.
Размер поля задается не всегда. Например, размер поля не задается для автоинкрементного и числового типа полей.
Ключ создается указанием его полей, для которых в колонке Key нужно установить *, нажав любую клавишу. Ключевые поля должны быть первыми, то есть верхними в списке полей. Для таблиц Paradox 7 ключ называют первичным индексом (Primary Index).
Типы полей:
Тип |
Обозначение |
Описание значения |
Alpha |
A |
Строка символов (<256 символов) |
Number |
N |
Число с плавающей точкой. 15 цифр мантиссы. Диапазон ‑10307..10308 |
Money |
$ |
Денежная сумма |
Short |
S |
Целое число. Диапазон ‑32 768..32 767 |
LongInteger |
L |
Целое число. Диапазон ‑2 147 483 648.. 2 147 483 647 |
BCD |
# |
Число в двоично-десятичном формате |
Date |
D |
Дата. Диапазон от 01.01.9999 до н.э. … 31.12.9999 |
Time |
T |
Время |
Timestamp |
@ |
Дата и время |
Memo |
M |
Строка символов без ограничения длины. Первые 240 символов в файле таблицы, остальные в файле с расширением MB |
Formatted Memo |
F |
Строка символов. Может содержать форматированный текст. |
Graphic |
G |
Графическое изображение. Форматы BMP, PCX, TIF, GIF, EPS. При загрузке в поле изображение преобразуется к формату BMP. |
OLE |
O |
Данные в формате технологии OLE. |
Logical |
L |
Логическое значение (True, False). |
Autoincrement |
+ |
Автоинкрементное поле. |
Binary |
B |
Последовательность байтов, длина не ограничена. Первые 240 байтов хранятся в файле таблицы, остальные в файле с расширением MB. |
Bytes |
Y |
Последовательность байтов, не более 255 байтов. |
Определение структуры таблицы выполняется с помощью комбинированного списка Table properties (Свойства таблицы), который содержит пункты:
Secondary Indexes - индексы,
Validity Checks - проверка правильности ввода значений полей,
Referential Integrity – ссылочная целостность,
Password Security – пароли,
Table Language – язык таблицы (языковый драйвер)
Table Lookup – таблица выбора
Dependent Tables – подчиненные таблицы.
Рассмотрим, например, БД «Prepod»(Преподаватели колледжа), состоящую из следующих таблиц:
PrepPredmGroup:
* |
* |
* |
|
FIO |
Predm |
Group |
VidZan |
A, 30 |
A, 20 |
A, 10 |
A, 10 |
Ivanov |
DB |
P-249 |
Practice |
Ivanov |
OS |
P-250 |
Practice |
Petrov |
IS |
P-249 |
Practice |
Petrov |
MM |
P-250 |
Practice |
Sedov |
MM |
P-250 |
Lection |
Prepod
* |
|
|
|
FIO |
Doljn |
Staj |
Otdel |
A, 30 |
A, 10 |
N |
A, 20 |
Ivanov |
Prep |
3 |
3 |
Petrov |
Prep |
7 |
3 |
Sedov |
St_prep |
10 |
4 |
Doljn
* |
|
Doljn |
Oklad |
A, 10 |
$ |
Prep |
1000 |
St_prep |
1500 |
Задание индексов. Нужно указать состав полей, параметры и имя индекса. Для создания индекса нужно в списке Table properties выбрать Secondary Indexes, затем нажать Define (Определить), либо Modify (Изменить), либо Erase( Удалить). В окне Define Secondary Index задаются состав полей и параметры индекса. При работе с записями индексные поля обрабатываются в порядке следования этих полей в составе индекса (Change order). Например, для таблицы PrepPredmGroup можно создать индекс Predm-Group-FIO. В этом же окне можно указать следующие параметры индекса:
Unique – составляющие индекс поля должны иметь уникальные значения;
Maintained – если таблица открыта, индекс автоматически не модифицируется,
Case sensitive – для полей строкового типа учитывается регистр символов,
Descending – сортировка выполняется в порядке убывания значений.
После нажатия Ok в окне Save Index As, указать имя индекса, например, indPredmGroupFam, затем нажать Ok.
Задание таблицы для выбора значений. Для задания таблицы выбора нужно:
выбрать пункт Table Lookup (таблица выбора),
нажать кнопку Define,
в появившемся окне в списке Fields выбрать поле, для которого задается таблица выбора перевести его в список Field name. В списке Look table задается таблица выбора. После нажатия кнопки со стрелкой, имя первого ее поля, значения которого будут использованы для формирования набора допустимых значений, перейдет в область Lookup field. Типы полей должны совпадать.
Нажать Ok.
Можно задать следующие режимы:
Lookup type (тип выбора):
Just current field (только текущее поле) - таблица выбора задается только для текущего поля.
All corresponding fields – таблица выбора назначается всем соответствующим полям.
Lookup access (Доступ к таблице выбора):
Fill no help (вставка без помощи)
Help and fill (помощь и вставка)- позволяет выбрать значения после нажатия <Ctrl>+<Space>.