Разработка базы данных "Университет"

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование

?-64 5 Вторая

record(s) selected.

. Выбрать коды всех дисциплин, которые имеют корень 'комп'D.DisciplineNumberDiscipline DD.Name LIKE '%комп%'

Результат выборки:

DISCIPLINENUMBER

 

 

. Выбрать расписание не Первую неделю для группы КИТ-64* FROM scheduleviewGroupName='КИТ-64' and WeekName='Первая'BY DAYOFWEEKNUMBER, HOUR, MINUTE

Результат выборки:

GROUPNAME DAYOFWEEKNUMBER WEEKNAME HOUR MINUTE DISCIPLINENAME LECTURERLASTNAME LECTURERFIRSTNAME AUDITORIUM BUILDINGNAME

КИТ-64 1 Первая 8 30 Финансы Гуридина Ирина 202 ГАК

КИТ-64 1 Первая 10 25 Теория алгоритмов Солощук Михаил 305 АК

КИТ-64 1 Первая 12 35 Системное программирование Сомхиева Ольга 305 АК

КИТ-64 2 Первая 8 30 Дискретная математика Пустовойтов Павел 23 ВЦ

КИТ-64 2 Первая 10 25 Теория вероятности Леонов Сергей 305 У1

КИТ-64 2 Первая 12 35 Организация баз данных и знаний Фастовский Эдуард 305 АК

КИТ-64 3 Первая 8 30 Высшая математика Деревянко Александр 304 ГАК

КИТ-64 3 Первая 10 25 История Украины Бреславец Виталий 304 У1

КИТ-64 3 Первая 12 35 Основы безопасности жизнедеятельности Панченко Владимир 1206 АК

КИТ-64 4 Первая 8 30 Структуры организации данных Гуридина Ирина 202 ГАК

КИТ-64 4 Первая 10 25 Методы и средства компьютерных и информационных технологий Бреславец Виталий 318 У1

КИТ-64 4 Первая 12 35 Основы программирования и алгоритмические языки Пустовойтов Павел 305 АК

КИТ-64 5 Первая 8 30 Микропроцессорные системы Порошин Сергей 202 ГАК

КИТ-64 5 Первая 10 25 Теория алгоритмов Солощук Михаил 305 АК

КИТ-64 5 Первая 12 35 Культурология Старусев Олег 501 У1

record(s) selected.

. Для каждого профессора определить количество читаемых им предметов в группе 'КИТ-64'.Lecturer.LastName, Lecturer.FirstName,(DisciplineNumber)Lecturer, LectureLecture.LecturerID=Lecturer.LecturerID.ACADEMICDEGREENAME='Профессор'by.LastName, Lecturer.FirstName

Результат выборки:

LASTNAME FIRSTNAME 3

Гладких Татьяна 2 Панченко Владимир 4Порошин Сергей 4 Солощук Михаил 6Фастовский Эдуард 4 5 record(s) selected.

 

7.3 Проверка ограничений целостности

 

Для проверки триггера выполним запросы, первый будет вставлять и изменять записи в таблице лекций на значение дня недели больше 7.Lecture SET DayOfWeekNumber=8E The command was processed as an SQL statement because it was not aCommand Line Processor command. During SQL processing it returned:N Application raised error with diagnostic text: "The DayOfWeekNumberis incorrect". SQLSTATE=75001INTO LECTURE(GROUPNAME, LECTURERID, TIMEID, WEEKTYPEID, DISCIPLINENUMBER, DAYOFWEEKNUMBER, AUDITORIUM, BUILDINGNAME)('КИТ-64', 27, 4, 1, '54354559', 9, '202', 'ГАК');

----------------------------- Command Entered ------------------------------INTO LECTURE(GROUPNAME, LECTURERID, TIMEID, WEEKTYPEID, DISCIPLINENUMBER, DAYOFWEEKNUMBER, AUDITORIUM, BUILDINGNAME)('КИТ-64', 27, 4, 1, '54354559', 9, '202', 'ГАК') ;E The command was processed as an SQL statement because it was not a valid Command Line Processor command. During SQL processing it returned:N Application raised error with diagnostic text: "The DayOfWeekNumber is incorrect". SQLSTATE=75001

 

Приложения

 

Приложение А. SQL-скрипты создания таблиц базы данных

TABLE DB2ADMIN.DISCIPLINE (VARCHAR (20) NOT NULL,VARCHAR (250) NOT NULL ,SMALLINT NOT NULL ,KEY (DISCIPLINENUMBER)TABLE DB2ADMIN.WEEKTYPE (SMALLINT GENERATED ALWAYS AS IDENTITY

(START WITH 1, INCREMENT BY 1, NO CACHE ) ,VARCHAR (100) NOT NULL ,KEY (WEEKTYPEID)TABLE DB2ADMIN.TIME (SMALLINT GENERATED ALWAYS AS IDENTITY

(START WITH 1, INCREMENT BY 1, NO CACHE ) ,SMALLINT NOT NULL,SMALLINT NOT NULL,KEY (TIMEID)TABLE DB2ADMIN.CHAIRTYPE (SMALLINT GENERATED ALWAYS AS IDENTITY

(START WITH 1, INCREMENT BY 1, NO CACHE ) ,VARCHAR (250) NOT NULL,KEY (CHAIRTYPEID)TABLE DB2ADMIN.UNIVERSITY (INTEGER GENERATED ALWAYS AS IDENTITY

(START WITH 1, INCREMENT BY 1, NO CACHE ) ,VARCHAR (100) NOT NULL,SMALLINT NOT NULL,DATE NOT NULL ,VARCHAR (250),VARCHAR (40),KEY (UNIVERSITYID)TABLE DB2ADMIN.DEPARTMENT (INTEGER GENERATED ALWAYS AS IDENTITY

(START WITH 1, INCREMENT BY 1, NO CACHE ) ,INTEGER NOT NULL ,VARCHAR (250) NOT NULL ,DATE NOT NULL ,KEY (DEPARTMENTID) ,KEY (UNIVERSITYID) REFERENCES DB2ADMIN.UNIVERSITY (UNIVERSITYID)TABLE DB2ADMIN.CHAIR (INTEGER GENERATED ALWAYS AS IDENTITY

(START WITH 1, INCREMENT BY 1, NO CACHE ) ,SMALLINT NOT NULL ,INTEGER ,VARCHAR (250) NOT NULL ,DATE NOT NULL ,KEY (CHAIRID) ,KEY (CHAIRTYPEID) REFERENCES DB2ADMIN.CHAIRTYPE (CHAIRTYPEID) ,KEY (DEPARTMENTID) REFERENCES DB2ADMIN.DEPARTMENT (DEPARTMENTID)TABLE DB2ADMIN.LECTURER (INTEGER GENERATED ALWAYS AS IDENTITY

(START WITH 1, INCREMENT BY 1, NO CACHE ) ,INTEGER NOT NULL ,VARCHAR (70) NOT NULL ,VARCHAR (70) NOT NULL ,VARCHAR (70) NOT NULL ,VARCHAR (120) NOT NULL ,VARCHAR (250) NOT NULL ,KEY (LECTURERID) ,KEY (CHAIRID) REFERENCES DB2ADMIN.CHAIR (CHAIRID)TABLE DB2ADMIN.LECTURE (VARCHAR (20) NOT NULL ,INTEGER NOT NULL ,VARCHAR (20) NOT NULL ,SMALLINT NOT NULL ,SMALLINT NOT NULL ,SMALLINT NOT NULL ,VARCHAR (20) NOT NULL ,VARCHAR (20) NOT NULL ,KEY (GROUPNAME, LECTURERID, TIMEID, WEEKTYPEID, DAYOFWEEKNUMBER) ,KEY (LECTURERID) REFERENCES DB2ADMIN.LECTURER (LECTURERID) ,KEY (DISCIPLINENUMBER) REFERENCES DB2ADMIN.DISCIPLINE (DISCIPLINENUMBER) ,KEY (TIMEID) REFERENCES DB2ADMIN.TIME (TIMEID) ,KEY (WEEKTYPEID) REFERENCES DB2ADMIN.WEEKTYPE (WEEKTYPEID)

инфологический процедурный база целостность

Приложение Б. SQL-скрипты создания триггеров

TRIGGER TWeekValidCASCADE BEFORE INSERT ON LectureNEW AS newEACH ROW MODE DB2SQL. DAYOFWEEKNUMBER is not null(new. DAYOFWEEKNUMBER 7)SQLSTATE '75001' ('The DayOfWeekNumber is incorrect');

 

Приложение В. Полные выборки таблиц

* FROM WeekType

WEEKTYPEID NAME

Первая

Вторая

Модульная

Зачетная

record(s) selected.

SELECT * FROM ChairType

CHAIRTYPEID NAME

Общая

Факультетская

Выпускающая

Базовая

record(s) selected.

SELECT * FROM University

UNIVERSITYID NAME ACCREDITATIONLEVEL CREATIONDATE ADDRESS PHONE

Харьковский Национальный университет 4 29/01/1805 Харьковский Национальный Университет имени В.Н. Каразина 61077, Харьков, площадь Свободы, 4. 707-53-75

Национальный Технический Университет - "Харьковский политехнический институт" 4 03/09/1885 Украина 61002, г. Харьков, ул. Фрунзе, 21 706-27-49

Государственный Автомобильно-Дорожный Технический Университет 3 05/08/1925 61002, Украина, г. Харьков, ул.Петровского, 25 700-38-65

Государственный аэрокосмический университет им. Н.Е.Жуковского "ХАИ" 4 06/10/1922 61070, Украина, Харьков, ул.Чкалова д.17 44-11-31

Харьковский Государственный Технический университет Радиоэлектроники 4 02/07/1966 г. Харьков, пр. Ленина 14 702-15-15

record(s) selected.

SELECT * FROM Department

DEPARTMENTID UNIVERSITYID NAME CREATIONDATE

1 Биологический 01/09/1900

1 Геолого-географический 01/09/1910

1 Экономический 01/09/1950

1 Иностранных языков 01/09/1920

2 Компьютерных и информационных технологий 01/09/2003

2 Автоматики и приборостроения 01/09/1995

2 Инженерно-физический 01/09/1985

2 Электроэнергетический 01/09/1965<