Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
База данных - Рынок.doc
Скачиваний:
42
Добавлен:
02.05.2014
Размер:
667.14 Кб
Скачать

5.2 Спецификация ограничений и правил поддержания целостности

В данном подразделе учитываются ограничения и правила поддержания целостности, выявленные на предыдущих этапах. Новые ограничения и правила обнаружены не были.

5.3 Sql-код для создания реляционной модели

В данном подразделе разрабатан SQL-код для создания реляционной модели.

CREATE TABLE Персона_арендатор

(Код арендатора NUM (5) NOT NULL PRIMARY KEY,

Паспортные данные CHAR (40) NOT NULL,

ФИО_Фамилия CHAR (20) NOT NULL,

ФИО_Имя CHAR (20) NOT NULL,

ФИО_Отчество CHAR (20) NOT NULL,

Адрес CHAR (30),

Номер_телефона INTEGER NOT NULL,

CHECK (‘A’<ФИО AND ФИО<’Я’),

FOREIGN KEY (Номер_телефона) REFERENCES Телефон

ON DELETE CASCADE

ON UPDATE CASCADE);

CREATE TABLE Персона_сотрудник

(Код сотрудника NUM (5) NOT NULL PRIMARY KEY,

Паспортные данные CHAR (40) NOT NULL,

ФИО_Фамилия CHAR (20) NOT NULL,

ФИО_Имя CHAR (20) NOT NULL,

ФИО_Отчество CHAR (20) NOT NULL,

Адрес CHAR (30),

Номер_телефона INTEGER NOT NULL,

CHECK (‘A’<ФИО AND ФИО<’Я’),

FOREIGN KEY (Номер_телефона) REFERENCES Телефон

ON DELETE CASCADE

ON UPDATE CASCADE);

CREATE TABLE Персона_сотрудник_администратор

(Код сотрудника NUM (5) NOT NULL PRIMARY KEY,

Паспортные данные CHAR (40) NOT NULL,

ФИО_Фамилия CHAR (20) NOT NULL,

ФИО_Имя CHAR (20) NOT NULL,

ФИО_Отчество CHAR (20) NOT NULL,

Адрес CHAR (30),

Номер_телефона INTEGER NOT NULL,

CHECK (‘A’<ФИО AND ФИО<’Я’),

FOREIGN KEY (Номер_телефона) REFERENCES Телефон

ON DELETE CASCADE

ON UPDATE CASCADE);

CREATE TABLE Персона_сотрудник_кладовщик

(Код сотрудника NUM (5) NOT NULL PRIMARY KEY,

Паспортные данные CHAR (40) NOT NULL,

ФИО_Фамилия CHAR (20) NOT NULL,

ФИО_Имя CHAR (20) NOT NULL,

ФИО_Отчество CHAR (20) NOT NULL,

Адрес CHAR (30),

Номер_телефона INTEGER NOT NULL,

CHECK (‘A’<ФИО AND ФИО<’Я’),

FOREIGN KEY (Номер_телефона) REFERENCES Телефон

ON DELETE CASCADE

ON UPDATE CASCADE);

CREATE TABLE Персона_сотрудник_член комиссии

(Код сотрудника NUM (5) NOT NULL PRIMARY KEY,

Паспортные данные CHAR (40) NOT NULL,

ФИО_Фамилия CHAR (20) NOT NULL,

ФИО_Имя CHAR (20) NOT NULL,

ФИО_Отчество CHAR (20) NOT NULL,

Адрес CHAR (30),

Номер_телефона INTEGER NOT NULL,

CHECK (‘A’<ФИО AND ФИО<’Я’),

FOREIGN KEY (Номер_телефона) REFERENCES Телефон

ON DELETE CASCADE

ON UPDATE CASCADE);

CREATE TABLE Контракт

(Номер контракта NUM (5) NOT NULL PRIMARY KEY,

Дата начала аренды DATE (6) NOT NULL,

Дата конца аренды DATE (6) NOT NULL,

Арендная плата NUM (4) NOT NULL,

Код персоны_сотрудника_администратора CHAR (6) NOT NULL,

Код персоны_арендатора CHAR (6) NOT NULL,

Код места CHAR (6) NOT NULL,

Код оборудования CHAR (6) NOT NULL,

Код ячейки CHAR (6) NOT NULL,

FOREIGN KEY (код персоны_сотрудника_администратора)

REFERENCES Персона_сотрудник_администратор

ON DELETE CASCADE

ON UPDATE CASCADE

FOREIGN KEY (код персоны_арендатора)

REFERENCES Персона_арендатор

ON DELETE CASCADE

ON UPDATE CASCADE

FOREIGN KEY (код места) REFERENCES Место

ON DELETE CASCADE

ON UPDATE CASCADE

FOREIGN KEY (код оборудования) REFERENCES Оборудование

ON DELETE CASCADE

ON UPDATE CASCADE

FOREIGN KEY (код ячейки) REFERENCES Место на складе

ON DELETE CASCADE

ON UPDATE CASCADE);

CREATE TABLE Телефон

(Номер INTEGER NOT NULL PRIMARY KEY,

Код CHAR (6),

Тип CHAR (10));

CREATE TABLE Контакт_арендатора

(Номер телефона INTEGER NOT NULL PRIMARY KEY ,

Код персоны_арендатора CHAR (6) NOT NULL PRIMARY KEY,

FOREIGN KEY (Номер телефона) REFERENCES Телефон

ON DELETE CASCADE

ON UPDATE CASCADE

FOREIGN KEY (код персоны_арендатора)

REFERENCES Персона_арендатор

ON DELETE CASCADE

ON UPDATE CASCADE);

CREATE TABLE Контакт_сотрудника

(Номер телефона INTEGER NOT NULL PRIMARY KEY,

Код персоны_сотрудника CHAR (6) NOT NULL PRIMARY KEY,

FOREIGN KEY (Номер телефона) REFERENCES Телефон

ON DELETE CASCADE

ON UPDATE CASCADE

FOREIGN KEY (код персоны_сотрудника)

REFERENCES Персона_сотрудника

ON DELETE CASCADE

ON UPDATE CASCADE);

CREATE TABLE Должность

(Код должности CHAR (6) NOT NULL PRIMARY KEY,

Название должности CHAR (20));

CREATE TABLE Карьера

(Номер приказа CHAR (6) NOT NULL PRIMARY KEY,

Стаж NUM (2) NOT NULL,

Оклад NUM (6) NOT NULL,

FOREIGN KEY Код должности REFERENCES Должность,

ON DELETE CASCADE

ON UPDATE CASCADE);

CREATE TABLE Место работы

(Номер приказа CHAR (6) NOT NULL PRIMARY KEY,

Дата приема DATE NOT NULL,

Дата увольнения DATE NOT NULL ,

Номер статьи CHAR (6) NOT NULL,

Код организации CHAR (6) NOT NULL,

Код персоны_сотрудника_кладовщика CHAR (6) NOT NULL,

Код персоны_сотрудника_администратора CHAR (6) NOT NULL,

Код персоны_сотрудника_члена комиссии CHAR (6) NOT NULL,

FOREIGN KEY (Номер статьи) REFERENCES Карьера

ON DELETE CASCADE

ON UPDATE CASCADE

FOREIGN KEY (Код организации) REFERENCES Организация

ON DELETE CASCADE

ON UPDATE CASCADE

FOREIGN KEY (Код персоны_сотрудника_кладовщика) REFERENCES

Персона_сотрудник_кладовщик

ON DELETE CASCADE

ON UPDATE CASCADE

FOREIGN KEY (Код персоны_сотрудника_ администратора)

REFERENCES Персона_сотрудник_администратор

ON DELETE CASCADE

ON UPDATE CASCADE

FOREIGN KEY (Код персоны_сотрудника_члена комиссии)

REFERENCES Персона_сотрудник_член комиссии

ON DELETE CASCADE

ON UPDATE CASCADE);

CREATE TABLE Организация

(Код организации CHAR (6) NOT NULL PRIMARY KEY,

Название организации CHAR (20));

CREATE TABLE Санконтроль

(Порядковый номер NUM (3) NOT NULL PRIMARY KEY,

Дата проверки DATE (6),

Код персоны_сотрудника_члена комиссии CHAR (6) NOT NULL,

Код товара CHAR (6) NOT NULL,

Значение CHAR (6) NOT NULL,

FOREIGN KEY (Код персоны_сотрудника_члена комиссии)

REFERENCES Персона_сотрудник_член комиссии

ON DELETE CASCADE

ON UPDATE CASCADE

FOREIGN KEY (Код товара) REFERENCES Товар

ON DELETE CASCADE

ON UPDATE CASCADE

FOREIGN KEY (Значение) REFERENCES Результат

ON DELETE CASCADE

ON UPDATE CASCADE);

CREATE TABLE Место на складе

(Код ячейки склада CHAR (6) NOT NULL PRIMARY KEY,

Название ячейки CHAR (20));

CREATE TABLE Место

(Код места CHAR (6) NOT NULL PRIMARY KEY,

Название места CHAR (20));

CREATE TABLE Оборудование

(Код оборудования CHAR (6) NOT NULL PRIMARY KEY,

Название оборудования CHAR (20));

CREATE TABLE Товар

(Код товара CHAR (6) NOT NULL PRIMARY KEY,

Название товара CHAR (20),

Код персоны_арендатора CHAR (6) NOT NULL,

FOREIGN KEY (код персоны_арендатора)

REFERENCES Персона_арендатор

ON DELETE CASCADE

ON UPDATE CASCADE);

CREATE TABLE Показатели

(Код показателя CHAR (6) NOT NULL PRIMARY KEY,

Название показателя CHAR (20),

Значение CHAR (40) NOT NULL,

FOREIGN KEY (Значение) REFERENCES Результат

ON DELETE CASCADE

ON UPDATE CASCADE);

CREATE TABLE Результат

(Значение CHAR (40) NOT NULL PRIMARY KEY,

Код показателя CHAR (6),

Порядковый номер санконтроля NUM (3) NOT NULL,

FOREIGN KEY (Код показателя) REFERENCES Показатели

ON DELETE CASCADE

ON UPDATE CASCADE

FOREIGN KEY (Порядковый номер санконтроля)

REFERENCES санконтроль

ON DELETE CASCADE

ON UPDATE CASCADE);

CREATE TABLE Выдача

(номер выдачи NUM (3) NOT NULL PRIMARY KEY,

Дата выдачи DATE (6)

Количество выданного товара CHAR (6),

Код оборудования CHAR (6),

Код персоны_сотрудника_кладовщика CHAR (6),

Код ячейки CHAR (6),

FOREIGN KEY (Код оборудования) REFERENCES Оборудование

ON DELETE CASCADE

ON UPDATE CASCADE,

FOREIGN KEY (Код персоны_сотрудника_кладовщика)

REFERENCES персона_сотрудник_кладовщик

ON DELETE CASCADE

ON UPDATE CASCADE,

FOREIGN KEY (Код ячейки) REFERENCES Место на складе

ON DELETE CASCADE

ON UPDATE CASCADE).

Соседние файлы в предмете Базы данных
  • #
  • #
  • #
    02.05.20142.4 Mб63База данных - Продажа ПО.mdb
  • #
    02.05.20142.33 Mб32База данных - Производители бытовой электроники.mdb
  • #
    02.05.20141.81 Mб53База данных - Расписание пассажирских авиаперевозок.mdb
  • #
  • #
    02.05.201411.28 Mб76База данных - Салон проката велосипедов.mdb
  • #
    02.05.201411.28 Mб31База данных - Салон проката велосипедов1.mdb
  • #
    02.05.20141.3 Mб140База данных - Склад предприятия.mdb
  • #
    02.05.20141.3 Mб82База данных - Складское предприятие.mdb
  • #
    02.05.20141.45 Mб30База данных - Учет кадров училища искусств города Уфы.mdb