
- •Содержание
- •Лабораторная №1 Проектирование структуры базы данных. Нормализация таблиц.
- •Лабораторная №2 Создание серверной части приложения: алиас, файл базы данных, таблицы.
- •Лабораторная работа №3 Визуальное проектирование структуры базы данных.
- •Лабораторная работа № 4 Отображение данных на клиенте.
- •Лабораторная №5 Добавление/редактирование/удаление данных.
- •Лабораторная работа №6 Создание генераторов и триггеров. Каскадные воздействия.
- •Лабораторная №7 Создание и использование хранимых процедур в ibExpert.
- •Лабораторная №8 Сортировка данных. Поиск. Фильтрация.
- •Лабораторная №9 Работа с транзакциями. Кэширование изменений.
- •Лабораторная №10 Обеспечение достоверности данных, исключительные ситуации.
- •Лабораторная №11 Работа с отчетами.
- •Лабораторная №12 Установление привилегий доступа.
Лабораторная №2 Создание серверной части приложения: алиас, файл базы данных, таблицы.
Цель работы: познакомить с принципами и различными способами создания и изменения серверной части базы данных; приобрести навыки работы с утилитами сервера InterBase.
Создание контейнера данных
Создадим базу данных DB.gdb формата InterBase:
Создайте папку C:\dbIB\server\, где будет создана база
Запустите программу IB Expert
Выберите команду Database->Create Database…
Зачение Server установить в Local
В Database ввести C:\dbIB\server\DB.gdb
В Username ввести SYSDBA, в Password – masterkey
Charset выбрать WIN1251
SQL Dialect -> Dialect 3
Поставить флаг перед Register Database After Creating
OK
Регистрация контейнера данных
В появившемся окне Database Registration:
Server Version установить в InterBase 7.0
В поле Database Alias ввести aliasDB
Нажать на кнопку Register
Выбрать команду Database->Connect To Database(Shift-Ctrl-C)
Для удаления контейнера выберите команду Database->Disconnect From Database(если она доступна), а затем команду Database->Drop Database. В появляющихся диалоговых окнах нажимать на кнопку Yes.
Создание алиаса для серверной базы данных
Запустите SQL Explorer
Выберите на левой панели вкладку Databases
Выберите команду Object->New
В окне New Database Alias выберите драйвер INTRBASE
Отредактируйте имя алиаса на левой панели. Пусть оно будет не INTRBASE1, a srvDB
Укажите на вкладке Definition, которая находится на правой панели, путь к таблице. Для этого щелкните мышью на правой колонке, напротив SERVER NAME, а затем на кнопке выбора
В появившемся окне Открытие файла укажите путь C:\dbIB\server\DB.gdb
Выберите Pdox ansi Cyrillic в качестве LANGDRIVER
Щелкните на пункте USER NAME и введите соответствующее имя пользователя InterBase — sysdba
Чтобы новый алиас вступил в силу, выберите команду Object->Apply
Создание серверной базы данных на основе настольной
Процесс создания серверной базы данных на основе настольной называют переносом унаследованных данных. Его производят с помощью утилиты Data Migration Wizard - Datapump. Но сначала следует создать алиас и таблицы настольной базы данных.
Запустите Data Migration Wizard командой Пуск->Программы->Borland Delphi 7->Datapump
В первом окне выберите алиас настольных таблиц
Во втором окне выберите алиас контейнера InterBase — srvDB
В окне Select Tables to Move выберите все таблицы
Просмотрите, используя кнопку Modify Mapping Information For Selected Item, типы данных, к которым будут преобразованы поля настольной базы
Завершите процесс переноса данных, щелкнув мышью на кнопке Upsize
Просмотрите заключительный отчет и щелкните на кнопке Done
Лабораторная работа №3 Визуальное проектирование структуры базы данных.
Цель работы: познакомить с принципами разработки и внедрения SQL-сценариев при проектировании структуры базы данных; научиться работе в графическом построителе базы данных
Определение типов данных таблиц
Назначая типы данных колонкам таблиц, можно использовать "свои" типы — домены.
Таблица 3 - Типы полей таблиц БД DB.gdb
Имя таблицы |
Имя поля |
Тип |
Длина |
Десятичная часть |
Owner |
NOn |
SMALLINT |
|
|
Ow |
CHAR |
10 |
|
|
AdO |
CHAR |
20 |
|
|
Lease |
NLease |
SMALLINT |
|
|
Tn |
SMALLINT |
|
|
|
AdT |
CHAR |
20 |
|
|
NOn |
SMALLINT |
|
|
|
AdR |
CHAR |
20 |
|
|
LDate |
DATE |
|
|
|
Realty |
AdR |
CHAR |
20 |
|
Тур |
CHAR |
20 |
|
|
Rent |
Тур |
CHAR |
20 |
|
Rn |
NUMERIC |
6 |
2 |
Таблица 4 - Описание доменов базы данных
Имя поля |
Тип |
Длина |
Значение по умолчанию |
Ограничения |
dnNum |
SMALLINT |
- |
|
0 |
dnOwTn |
CHAR |
10 |
|
нет |
dnAddrs |
CHAR |
20 |
|
нет |
dnTyp |
CHAR |
20 |
1-к. квартира |
1-к.квартира 2-к.квартира дом |
dnRn |
NUMERIC |
6,2 |
60 |
> 0 |
dnDATE |
TIMESTAMP |
- |
|
<= "TODAY" |
Создание доменов
Для создания домена выберите команду Database->New Domain. В появившемся окне Domain вводится информация о доменах. Name – имя домена, Field Type – тип поля домена, Size/Scale – размер поля, Not Null – обязательное ли поле, Default Source – значение по умолчанию, Check – проводимая проверка (например, value > 0, т.е. значение поля должно быть больше нуля). Добавление нового домена производится нажатием на кнопку со значком «+», удаление – «-».
После заполнения данных о доменах следует нажать на кнопку Compile(значок в виде молнии) или Ctrl-F9. В появившемся окне произойдет создание доменов и будут выведены ошибки(если таковые будут найдены). Внизу есть кнопки: Commit(применить изменения) и Rollback(откатить изменения). Если ошибок не обнаружено, то нажмите на кнопку Commit.
Создание таблиц
Для создания таблицы выберите команду Database->New Table. В появившемся окне вводится информация о полях таблицы. Параметры поля можно задать вручную, а можно доменом. Для задания доменом следует указать в поле Domain нужный домен. Создание нового поля производится нажатием на кнопку Add Field(вторая после кнопки с молнией), добавление происходит в конец списка полей. Следующая кнопка(Insert Field) производит добавление в начало списка полей. Кнопка после(Drop/Delete Field) удаляет поле.
После задания полей следует нажать на кнопку Compile(кнопка с молнией) или Ctrl-F9. В появившемся окне, как и при создании доменов, будут кнопки Commit и Rollback. Для применения изменений нужно нажать на Commit.
С
оздание ключей
Для создания внешнего ключа перейдите на вкладку Constraints(ограничители), в которой надо перейти на вкладку 2. Foreign keys. В появившеся таблице нажмите правой кнопкой мыши на шапку таблицы и выберите команду New foreign key или нажмите на клавишу Insert. Будет добавлен внешний ключ и следует задать поле и таблицу, на которую ссылается ключ. Описание полей таблицы внешних ключей :
Constraint Name – название внешнего ключа
On Field – какое поле данной таблицы будет ссылаться на другую
FK Table – на какую таблицу будет ссылаться внешний ключ
FK Field – на какое поле другой таблицы будет ссылаться ключ
Главный (первичный) ключ создается на соседней вкладке слева 1.Primary key, создаются так же как и внешние, но надо указать только имя ключа и ключевое поле.