- 23 -
· В соответствии с вариантом спроектируйте базу данных любым методом проектирования на основе описания предметной области.
1. В СУБД InterBase 6.0/Firebird 1.5 реализуйте серверную часть спроектированной ранее базы данных, которая должна содержать:
1) таблицы с определением первичного ключа
2) триггеры, реализующие каскадное обновление и каскадное удаление связанных полей
3) триггеры, присваивающие уникальное значение генератора в поле первичного ключа
4) триггеры, обеспечивающие журнализацию изменений определенной таблицы
5) не менее трех различных хранимых процедур
2. В ИСР Delphi создайте клиентское приложение, используя любую технологию доступа к данным (BDE, IBX, ADO и др.) с возможностью поиска и фильтрации данных, а также вывода отчета.
1) У каждой книги в библиотеке свой идентификационный номер.
2) Каждая книга может быть издана в одном издательстве.
3) В одном и том же издательстве издается несколько книг.
4) Каждая книга имеет определенное количество страниц, тип переплета, величину тиража.
5) Каждая книга в конкретный момент может находиться или в библиотеке или на руках только у одного читателя.
6) Каждый читатель может взять из библиотеки несколько книг.
7) Каждый читатель имеет уникальный номер абонемента.
8) Имя читателя не уникально. Название издательства не уникально.
9) Читатель имеет ФИО, телефон, адрес. Издательство - название, город.
- 23 -
Рис.1. ER-диаграмма
Так как каждая книга в конкретный момент времени может находиться на руках только у одного читателя, то мы можем связать сущности «Книга» и «Читатели» по полю «ID Абонента» связью типа Многие к одному так как в этом поле, являющемся внешним ключом для атрибута «Книги», могут повторяться записи, ибо один и тот же читатель может взять сразу несколько книг. Если это поле содержит значение NULL, то значит, что данная книга ни находится на руках у читателя, а находится в библиотеке. Добавим для сущности «Книга» дополнительное свойство «Дата выдачи». Значения этого поля должны равняться NULL если значение поля «ID Абонента» так же равняется NULL.
Приведём базу данных к третьей нормальной форме. Свойство «Издательство» сущности «Книги» имеет дополнительные свойства не зависящие от ключевых. Поэтому сделаем свойство «Издательство» самостоятельной сущностью и введём для него дополнительное свойство «ID Издательства» и сделаем его ключевым.
- 23 -
Рис.2. ER-диаграмма
Опишем структуру каждой таблицы.
Таблица «Книги» (Books)
Наименование поля |
Тип данных |
Ограничения |
|
ID Книги (ID_Books) |
Целое число |
NOT NULL Первичный ключ Значение уникально |
|
Наименование (Name) |
Строка (30) |
NOT NULL |
|
ID Издательства (ID_Publishers) |
Целое число |
NOT NULL Внешний ключ |
|
Количество страниц (K_pages) |
Целое число |
NOT NULL |
|
Тип переплёта (Cover) |
Строка (15) |
NOT NULL |
|
Тираж (Tiraz) |
Целое число |
NOT NULL |
|
ID Абонента (ID_abonent) |
Целое число |
Внешний ключ |
|
Дата выдачи (Date_issue) |
Дата |
Таблица «Издательства» (Publishers)
Наименование поля |
Тип данных |
Ограничения |
|
ID Издательства (ID_Publishers) |
Целое число |
NOT NULL Первичный ключ Значение уникально |
|
Название (Name) |
Строка (20) |
NOT NULL |
|
Город (City) |
Строка (20) |
Таблица «Читатели» (Readers)
Наименование поля |
Тип данных |
Ограничения |
|
ID Абонента (ID_ abonent) |
Целое число |
NOT NULL Первичный ключ Значение уникально |
|
ФИО (FIO) |
Строка (30) |
NOT NULL |
|
Телефон (Telephone) |
Строка (10) |
||
Адрес (Address) |
Строка (20) |
NOT NULL |
Реализация серверной части базы данных
Серверную часть базы данных будем выполнять на сервере FireBird 2.1 в визуальной среде разработки IBExpert.
Запустим IBExpert. Выберем команду Database/Create Database (База данных/Создать базу данных). В появившемся окне Create Database (Создание базы данных) укажем:
· Server (Сервер) - Local (локальный)
· Database (Файл БД) - C:
Контрольная работа | Концепция информатизации Российской Федерации |
Контрольная работа | Причины агрессивного поведения. Методы работы с агрессивными детьми |
Контрольная работа | Алгоритм выбора и реализации предпринимательской идеи |
Контрольная работа | Системы управления взаимоотношения с клиентами |
Контрольная работа | Учет материальных затрат в бухгалтерском учете |
Контрольная работа | Геополитическое положение России |
Контрольная работа | Особенности вознаграждения работников в организации |
Контрольная работа | Виды запасов |
Контрольная работа | Психоанализ |
Контрольная работа | Экономико-географическая характеристика Печорского угольного бассейна 2 |
Контрольная работа | Особенности вознаграждения работников в организации |
Контрольная работа | Виды запасов |
Контрольная работа | Психоанализ |
Контрольная работа | Экономико-географическая характеристика Печорского угольного бассейна 2 |
Контрольная работа | Современные методы арт-терапии |