Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции_БД.doc
Скачиваний:
28
Добавлен:
04.05.2019
Размер:
4.03 Mб
Скачать

Раздел 2. Разработка приложений для работы с Базами Данных в среде Delphi.

2.1. Технология создания информационной системы.

2.1.1.Создание таблиц базы данных в Database Desktop.

Простую информационную систему можно создать с помощью программы Database Desktop, Конструктора формы и Инспектора объектов. Работа состоит из следующих этапов:

  1. создание БД,

  2. создание приложения.

Программа Database Desktop позволяет создавать таблицы, изменять их структуры, редактировать записи.

Создание таблицы:

  1. выполнить команду FileNewTable;

  2. в появившемся окне Create Table (Создание таблицы) задать тип (формат) таблицы, например, Paradox 7 и нажать Ok;

  3. в окне Create Paradox 7 Table: (Untitled) определить структуру таблицы, задав описание хотя бы одного поля;

  4. сохранить таблицу, нажав 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.

Задание таблицы для выбора значений. Для задания таблицы выбора нужно:

  1. выбрать пункт Table Lookup (таблица выбора),

  2. нажать кнопку Define,

  3. в появившемся окне в списке Fields выбрать поле, для которого задается таблица выбора перевести его в список Field name. В списке Look table задается таблица выбора. После нажатия кнопки со стрелкой, имя первого ее поля, значения которого будут использованы для формирования набора допустимых значений, перейдет в область Lookup field. Типы полей должны совпадать.

  4. Нажать Ok.

Можно задать следующие режимы:

Lookup type (тип выбора):

Just current field (только текущее поле) - таблица выбора задается только для текущего поля.

All corresponding fields – таблица выбора назначается всем соответствующим полям.

Lookup access (Доступ к таблице выбора):

Fill no help (вставка без помощи)

Help and fill (помощь и вставка)- позволяет выбрать значения после нажатия <Ctrl>+<Space>.