Разработка логического и физического уровней модели данных с помощью CASE-средства, страница 2

·  диаграмму сущность-связь (Entity Relationship Diagram (ERD));

·  модель данных, основанную на ключах (Key Based model (KB));

·  полную атрибутивную модель (Fully Attributed model (FA)).

Создание физического уровеня модели данных, разработанной согласно п. 3 задания, для двух СУБД: MySQL, MS SQL Server.

СУБД MS MySQL

При создании физической модели СУБД MySQL сформировалась следующая схема

Так же были созданны следующие таблицы :

Программный код объектов БД

REATE TABLE Дисциплины

(

КодДисциплины        INTEGER NOT NULL,

Наименование         VARCHAR(50) NULL,

Курс                 INTEGER NULL,

Семестр              INTEGER NULL

);

ALTER TABLE Дисциплины

ADD PRIMARY KEY (КодДисциплины);

CREATE TABLE Должности

(

КодДолжности         INTEGER NOT NULL,

Наименование         VARCHAR(50) NULL

);

ALTER TABLE Должности

ADD PRIMARY KEY (КодДолжности);

CREATE TABLE Кафедры

(

КодКафедры           INTEGER NOT NULL,

КодФакультета        INTEGER NULL,

ТипКафедры           VARCHAR(30) NULL,

Наименование         VARCHAR(50) NULL

);

ALTER TABLE Кафедры

ADD PRIMARY KEY (КодКафедры);

CREATE TABLE Преподаватели

(

КодПреподавателя     INTEGER NOT NULL,

КодДисциплины        INTEGER NULL,

КодКафедры           INTEGER NULL,

ФИО                  VARCHAR(80) NULL,

НаименованиеДисциплины VARCHAR(80) NULL

);

ALTER TABLE Преподаватели

ADD PRIMARY KEY (КодПреподавателя);

CREATE TABLE ЗакреплениеДисциплин

(

КодЗакрепления       INTEGER NOT NULL,

КодПреподавателя     INTEGER NULL,

Семестр              INTEGER NULL,

Год                  DATE NULL,

КодДисциплины        INTEGER NULL

);

ALTER TABLE ЗакреплениеДисциплин

ADD PRIMARY KEY (КодЗакрепления);

CREATE TABLE Сотрудники

(

КодСотрудника        INTEGER NOT NULL,

КодДолжности         INTEGER NULL,

КодДисциплины        INTEGER NULL,

ФИО                  VARCHAR(80) NULL

);

ALTER TABLE Сотрудники

ADD PRIMARY KEY (КодСотрудника);

CREATE TABLE ДатаРождения

(

КодДатыРождения      INTEGER NOT NULL,

КодСотрудника        INTEGER NULL,

ГодРождения          DATE NULL

);

ALTER TABLE ДатаРождения

ADD PRIMARY KEY (КодДатыРождения);

CREATE TABLE Специальности

(

КодСпециальности     INTEGER NOT NULL,

КодДолжности         INTEGER NULL,

КодДисциплины        INTEGER NULL,

ФИО                  VARCHAR(80) NULL

);

ALTER TABLE Специальности

ADD PRIMARY KEY (КодСпециальности);

CREATE TABLE Учебная_нагрузка

(

КодНагрузки          INTEGER NOT NULL,

КодКафедры           INTEGER NULL,

КодДисциплины        INTEGER NULL,

КодСпециальности     INTEGER NULL,

КоличествоЛекций     INTEGER NULL,

КоличествоПрактик    INTEGER NULL,

КоличествоЛабораторных INTEGER NULL,

Семестр              INTEGER NULL,

Год                  DATE NULL

);

ALTER TABLE Учебная_нагрузка

ADD PRIMARY KEY (КодНагрузки);

CREATE TABLE Факультеты

(

КодФакультета        INTEGER NOT NULL,

Наименование         VARCHAR(80) NULL

);

ALTER TABLE Факультеты

ADD PRIMARY KEY (КодФакультета);

ALTER TABLE Кафедры

ADD FOREIGN KEY R_9 (КодФакультета) REFERENCES Факультеты (КодФакультета);

ALTER TABLE Преподаватели

ADD FOREIGN KEY R_5 (КодДисциплины) REFERENCES Дисциплины (КодДисциплины);

ALTER TABLE Преподаватели

ADD FOREIGN KEY R_6 (КодКафедры) REFERENCES Кафедры (КодКафедры);

ALTER TABLE ЗакреплениеДисциплин

ADD FOREIGN KEY R_4 (КодДисциплины) REFERENCES Дисциплины (КодДисциплины);

ALTER TABLE ЗакреплениеДисциплин

ADD FOREIGN KEY R_10 (КодПреподавателя) REFERENCES Преподаватели (КодПреподавателя);

ALTER TABLE Сотрудники

ADD FOREIGN KEY R_2 (КодДисциплины) REFERENCES Дисциплины (КодДисциплины);

ALTER TABLE Сотрудники

ADD FOREIGN KEY R_3 (КодДолжности) REFERENCES Должности (КодДолжности);

ALTER TABLE ДатаРождения

ADD FOREIGN KEY R_1 (КодСотрудника) REFERENCES Сотрудники (КодСотрудника);

ALTER TABLE Специальности

ADD FOREIGN KEY R_7 (КодДолжности) REFERENCES Должности (КодДолжности);

ALTER TABLE Специальности

ADD FOREIGN KEY R_8 (КодДисциплины) REFERENCES Дисциплины (КодДисциплины);

ALTER TABLE Учебная_нагрузка

ADD FOREIGN KEY R_11 (КодКафедры) REFERENCES Кафедры (КодКафедры);

ALTER TABLE Учебная_нагрузка

ADD FOREIGN KEY R_12 (КодДисциплины) REFERENCES Дисциплины (КодДисциплины);

ALTER TABLE Учебная_нагрузка

ADD FOREIGN KEY R_13 (КодСпециальности) REFERENCES Специальности (КодСпециальности);

·  в файл MS SQL Server

Результат выполнения прямого проектирования в СУБД SQL-Server