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

Построение инфологической, физической и концептуальной моделей данных, создание процедурных ограничений целостности и типичных запросов к базе. Описания занесения данных в таблицы об иерархии кафедр и факультетов, информации о расписании и лекторах.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 30.11.2011
Размер файла 2,8 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Содержание

  • Вступление
  • 1. Индивидуальное задание
  • 2. Построение инфологической модели данных
  • 3. Построение концептуальной модели данных
  • 4. Построение физической модели и создание базы данных
  • 5. Создание процедурных ограничений целостности
  • 6. Создание типичных запросов к базе данных
  • 6.1 Примеры операторов, которые записывают данные в таблицы
  • 6.2 Примеры операторов на выборку данных из базы данных
  • 6.3 Проверка ограничений целостности
  • Приложения
  • Вступление
  • В ходе выполнения курсового проекта была разработана база данных «Университет». В базе данных учтены данные об иерархии кафедр и факультетов, а также информация о расписании, и лекторах. В основе создания базы данных лежит задание, полученное на кафедре «Информатика и интеллектуальная собственность».
  • 1. Индивидуальное задание
  • Задание для курсового проекта:
  • 1. Построить ER-диаграмму для предметной области «Университет», в которой должны отражаться данные об университете, факультете, кафедре, преподавателях, расписании.
  • 2. Конвертировать ER-диаграмму в концептуальную схему, отображаемую реляционные таблицы, и нормализовать таблицы к форме не ниже Нормальной Формы Бойса-Кодда.
  • 3. Составить SQL-скрипты для создания таблиц базы данных и включить в них все, оговоренные логикой предметной области, декларативные ограничения целостности (первичные и внешние ключи, проверочные ограничения и т.д.)
  • 4. SQL-скрипты должны быть разработаны для СУБД DB2.
  • 5. Разработать необходимые ограничения целостности для построенной базы данных.
  • 2. Построение инфологической модели
  • В высших учебных заведениях ряда стран учебные подразделения, соответствующие факультетам, могут называются департаментами, институтами, колледжами.
  • Факультет вуза имеет следующую структуру. Руководство работой факультета осуществляет декан, для руководства отдельными направлениями деятельности факультета (учёба, научные исследования и т. д.) назначаются заместители декана. Для рассмотрения основных вопросов деятельности факультета при декане организуется совет факультета. Основной учебным и научно-исследовательским подразделением факультета является кафедра, в составе которой могут создаваться секции. Для организации учебной работы в составе факультета создаются отделения. Отделения выделяются либо по специальностям или специализациям, либо по форме обучения (заочное, очное, подготовительное, вечернее). Для ведения научно-исследовательской работы в составе факультета создаются лаборатории и научно-исследовательские центры.
  • Факультет является основным типом учебного подразделения вуза. Иногда факультеты близких специальностей группируются в рамках вуза в более крупные подразделения (которые получают названия, характерные для вузов -- институты, академии и т. п.). Во многих вузах существуют самостоятельные заочные и вечерние факультеты, подготовительные факультеты, факультеты повышения квалификации специалистов.
  • Кафедра в высших учебных заведениях -- основное учебно-научное подразделение, осуществляющее учебную, методическую и научно-исследовательскую работу по одной или нескольким родственным дисциплинам, воспитательную работу среди студентов, а также подготовку научно-педагогических кадров, повышение квалификации специалистов.
  • Кафедру возглавляет, как правило, профессор, доктор наук. В состав кафедры входят профессора, доценты, ассистенты, старшие преподаватели, ведущие, старшие и младшие научные сотрудники, аспиранты и др. Кафедра имеет свои учебные лаборатории и кабинеты.
  • На кафедру возлагаются проведение лекций, лабораторных, практических, семинарских и др. видов учебных занятий, руководство учебной и производственной практикой, исследовательскими работами, курсовыми и дипломными проектами (работами), проведение курсовых экзаменов и зачётов и др.
  • В результате получим следующую ER-диаграмму.
  • Рис. 1 ER-диаграмма.
  • 3. Построение концептуальной модели базы данных
  • Пользуясь построенной ER-диаграммой, разработаем концептуальную модель данных. При разработке ER-диаграммы были выделены в отдельные сущности зачетки, аттестация, тип стипендии, ученая степень, занимаемая студентом должность.
  • В результате имеем 9 таблиц. Определим для них первичные ключи.
  • Таблицы University, Department, Chair, Lecturer имеют первичные ключи, имя которых было образовано путем добавления к имени сущности выражения “ID”. Ключи имеют тип INTEGER ввиду того, что объем данных, которые могут содержаться в них, будет очень велик.
  • Такие таблицы как WeekType, Time, ChairType, имеют первичный ключ, название которого образовано по правилу, описанному выше, типа SMALLINT, поскольку данные в этих таблицах не будут изменяться с большой динамикой и как правило значения, хранящиеся в них, будут внесены однажды и без изменений.
  • Таблица Discipline имеет первичный ключ DisciplineNumber типа VARCHAR(20) для хранения символьного кода дисциплины.
  • Таблица Lecture имеет составной ключ, из полей GroupName, LecturerID, TimeID, WeekTypeID, DayOfWeekNumber.
  • В результате имеем следующую концептуальную модель:
  • Рис.2 Концептуальная модель.
  • 4. Построение физической модели и создание базы данных
  • В разрабатываемой базе данных содержится 9 таблиц. Приведем описание каждой таблицы базы данных. Скрипты создания базы данных содержатся в приложении.
  • #

    Название столбца

    Тип данных

    Ограничение

    Комментарии

    Discipline(Дисциплина)

    1

    DISCIPLINENUMBER

    VARCHAR (20) NOT NULL

    Первичный ключ

    2

    NAME

    VARCHAR (250) NOT NULL

    Название дисциплины

    3

    HOURS

    SMALLINT NOT NULL

    Количество часов

    WeekType(Тип недели)

    1

    WEEKTYPEID

    SMALLINT NOT NULL PRIMARY KEY

    Первичный ключ

    2

    NAME

    VARCHAR (100) NOT NULL

    Название

    Time(Начало пары)

    1

    TIMEID

    SMALLINT NOT NULL PRIMARY KEY

    Первичный ключ

    2

    HOUR

    SMALLINT NOT NULL

    Час начала пары

    3

    MINUTE

    SMALLINT NOT NULL

    Минута начала пары

    ChairType(Тип кафедры)

    1

    CHAIRTYPEID

    SMALLINT NOT NULL PRIMARY KEY

    Первичный ключ

    2

    NAME

    VARCHAR (250) NOT NULL

    Название типа кафедры

    University(Университет)

    1

    UNIVERSITYID

    INTEGER NOT NULL PRIMARY KEY

    Первичный ключ

    2

    NAME

    VARCHAR (100) NOT NULL

    3

    ACCREDITATIONLEVEL

    SMALLINT NOT NULL

    Уровень аккредитации

    4

    CREATIONDATE

    DATE NOT NULL

    Дата создания

    5

    ADDRESS

    VARCHAR (250)

    Адрес ВУЗА

    6

    PHONE

    VARCHAR (40)

    Контактный телефон

    Department(Факультет)

    1

    DEPARTMENTID

    INTEGER NOT NULL PRIMARY KEY

    Первичный ключ

    2

    UNIVERSITYID

    INTEGER NOT NULL

    Ссылка на таблицу University

    3

    NAME

    VARCHAR (250) NOT NULL

    Название

    4

    CREATIONDATE

    DATE NOT NULL

    Дата создания

    Chair(Кафедра)

    1

    CHAIRID

    INTEGER NOT NULL PRIMARY KEY

    Первичный ключ

    2

    CHAIRTYPEID

    SMALLINT NOT NULL

    Ссылка на таблицу Chair

    3

    DEPARTMENTID

    INTEGER

    Ссылка на таблицу Department

    4

    NAME

    VARCHAR (250) NOT NULL

    Название

    5

    CREATIONDATE

    DATE NOT NULL

    Дата создания

    Lecturer(Лектор)

    1

    LECTURERID

    INTEGER NOT NULL PRIMARY KEY

    Первичный ключ

    2

    CHAIRID

    INTEGER NOT NULL

    Ссылка на таблицу Chair

    3

    LASTNAME

    VARCHAR (70) NOT NULL

    Фамилия

    4

    FIRSTNAME

    VARCHAR (70) NOT NULL

    Имя

    5

    MIDDLENAME

    VARCHAR (70) NOT NULL

    Отчество

    6

    ACADEMICDEGREENAME

    VARCHAR (120) NOT NULL

    Ученая степень

    7

    POST

    VARCHAR (250) NOT NULL

    Занимаемая должность

    Lecture(Лекция)

    1

    GROUPNAME

    INTEGER NOT NULL PRIMARY KEY

    Первичный ключ

    2

    LECTURERID

    VARCHAR(20) NOT NULL PRIMARY KEY

    Ссылка на таблицу Lecturer

    3

    DISCIPLINENUMBER

    INTEGER NOT NULL

    Ссылка на таблицу Discipline

    4

    TIMEID

    SMALLINT NOT NULL PRIMARY KEY

    Ссылка на таблицу Time

    5

    WEEKTYPEID

    SMALLINT NOT NULL PRIMARY KEY

    Ссылка на таблицу WeekType

    6

    DAYOFWEEKNUMBER

    SMALLINT NOT NULL PRIMARY KEY

    День недели

    7

    AUDITORIUM

    VARCHAR (20) NOT NULL

    Номер аудитории

    8

    BUILDINGNAME

    VARCHAR (20) NOT NULL

    Название корпуса

    • 5. Создание процедурных ограничений целостности
    • При анализе структуры данных и предметной области было установлено, что структура базы данных обеспечивает целостность данных. В большинстве случаев данные, которые хранятся, не противоречат друг другу.
    • Хотя может возникнуть ситуация, когда в таблице лекций можно внести значение дня недели, превышающее значение 7, что изначально не является верным. Одним из возможных выходов из такой ситуации является создание триггера.
    • Назначим код ошибки 75001 и текст сообщения 'The DayOfWeekNumber is incorrect'.
    • Текст на создание триггера находится в приложении.
    • 6. Создание типичных запросов к базе данных
    • 6.1 Примеры операторов, которые записывают данные в таблицы
    • Для каждой таблицы приведем примеры запросов.
    • Таблица WeekType:
    • INSERT INTO WEEKTYPE(NAME) VALUES('Первая');
    • INSERT INTO WEEKTYPE(NAME) VALUES('Вторая');
    • Таблица Time:
    • INSERT INTO TIME(HOUR, MINUTE) VALUES(8, 30);
    • INSERT INTO TIME(HOUR, MINUTE) VALUES(10, 25);
    • Таблица ChairType:
    • INSERT INTO CHAIRTYPE(NAME) VALUES('Общая');
    • Таблица University:
    • INSERT INTO UNIVERSITY(NAME, ACCREDITATIONLEVEL, CREATIONDATE, ADDRESS, PHONE)
    • VALUES('Национальный Технический Университет - "Харьковский политехнический институт"', 4,
    • '3/09/1885', 'Украина 61002, г. Харьков, ул. Фрунзе, 21',
    • '706-27-49');
    • Таблица Department:
    • INSERT INTO DEPARTMENT(UNIVERSITYID, NAME, CREATIONDATE)
    • VALUES(1, 'Биологический', '1/9/1900');
    • Таблица Chair:
    • INSERT INTO CHAIR(CHAIRTYPEID, DEPARTMENTID, NAME, CREATIONDATE)
    • VALUES(2, 1, 'Биохимии', '1/9/1901');
    • Таблица Lecturer:
    • INSERT INTO LECTURER(CHAIRID, LASTNAME, FIRSTNAME, MIDDLENAME, ACADEMICDEGREENAME, POST)
    • VALUES(1, 'Перский', 'Евгений', 'Ефроимович', 'Профессор', 'Заведующий кафедрой');
    • Таблица Discipline:
    • INSERT INTO DISCIPLINE(DISCIPLINENUMBER, NAME, HOURS) VALUES('54354551', 'Высшая математика', 120);
    • Таблица Lecture:
    • INSERT INTO LECTURE(GROUPNAME, LECTURERID, TIMEID, WEEKTYPEID, DISCIPLINENUMBER, DAYOFWEEKNUMBER, AUDITORIUM, BUILDINGNAME)
    • VALUES('КИТ-64', 27, 1, 1, '54354559', 1, '202', 'ГАК');
    • 7.2 Примеры операторов на выборку данных из базы данных
    • 1. Определить университет, который имеет наибольшее число профессоров.
    • SELECT T.Name FROM
    • (SELECT U1.Name, count(L1.LecturerID) as ProfessorsCount
    • FROM University U1, Department D1, Chair C1, Lecturer L1
    • WHERE
    • L1.AcademicDegreeName='Профессор'
    • AND
    • L1.ChairID=C1.ChairID
    • AND
    • C1.DepartmentID=D1.DepartmentID
    • AND
    • D1.UniversityID=U1.UniversityID
    • group by U1.Name
    • ) T
    • order by T.ProfessorsCount DESC
    • FETCH FIRST 1 ROWS ONLY
    • Результат выборки:
    • Харьковский Государственный Технический университет Радиоэлектроники
    • 1 record(s) selected.
    • 2. Вывести информацию о факультетах каждого университета и указать количество кафедр для этого факультета.
    • SELECT
    • D.Name, D.CreationDate, count(C.ChairID) as ChairsCount, U.Name AS University
    • FROM
    • Department D, University U, Chair C
    • WHERE
    • U.UniversityID=D.UniversityID
    • AND
    • C.DepartmentID=D.DepartmentID
    • GROUP BY D.Name, D.CreationDate, U.Name
    • ORDER BY U.Name, D.Name
    • Результат выборки:
    • SELECT
    • Lecture. BuildingName
    • FROM
    • Lecture, Lecturer, Chair, Department, University
    • WHERE
    • University.Name='Национальный Технический Университет - "Харьковский политехнический институт"'
    • AND
    • Department. UniversityID=University. UniversityID
    • AND
    • Chair. DepartmentID=Department. DepartmentID
    • AND
    • Lecturer.ChairID=Chair.ChairID
    • AND
    • Lecture.LecturerID=Lecturer.LecturerID
    • GROUP BY Lecture.BuildingName
    • Результат выборки:
    • BUILDINGNAME
    • АК
    • ВЦ
    • ГАК
    • У1
    • У2
    • 5 record(s) selected
    • 6. Выполнить предыдущий запрос используя представление.
    • SELECT
    • ScheduleView.BuildingName
    • FROM
    • ScheduleView
    • GROUP BY
    • ScheduleView.BuildingName
    • Результат выборки:
    • BUILDINGNAME
    • АК
    • ВЦ
    • ГАК
    • У1
    • У2
    • 5 record(s) selected
    • 7. Выбрать те дни недели для всех групп, предметы для которых будут различными в зависимости от типа недели.
    • SELECT SV1.* FROM
    • ScheduleView SV1, ScheduleView SV2
    • WHERE
    • SV1.GroupName=SV2.GroupName
    • AND
    • SV2.DayOfWeekNumber=SV1.DayOfWeekNumber
    • AND
    • SV2.DayOfWeekNumber=SV1.DayOfWeekNumber
    • AND
    • SV1.Hour=SV2.Hour
    • AND
    • SV1.Minute=SV2.Minute
    • AND
    • SV1.DisciplineName <> SV2.DisciplineName
    • ORDER BY
    • SV1.GroupName, SV1.DayOfWeekNumber, SV1.Hour, SV1.Minute
    • Результат выборки:
    • КИТ-44a 1 Вторая 10 25 Компьютерная графика Гладких Татьяна 506 У1 КИТ-44a 1 Первая
    • КИТ-44a 1 Первая 10 25 Теория алгоритмов Солощук Михаил 305 АК КИТ-44a 1 Вторая
    • КИТ-44a 3 Вторая 8 30 Высшая физика Старусев Олег 22 У2 КИТ-44a 3 Первая
    • КИТ-44a 3 Первая 8 30 Высшая математика Деревянко Александр 304 ГАК КИТ-44a 3 Вторая
    • КИТ-44a 5 Вторая 10 25 Философия Старусев Олег 803 У1 КИТ-44a 5 Первая
    • КИТ-44a 5 Первая 10 25 Культурология Старусев Олег 501 У1 КИТ-44a 5 Вторая
    • КИТ-64 1 Вторая 10 25 Компьютерная графика Гладких Татьяна 506 У1 КИТ-64 1 Первая
    • КИТ-64 1 Первая 10 25 Теория алгоритмов Солощук Михаил 305 АК КИТ-64 1 Вторая
    • КИТ-64 3 Вторая 8 30 Высшая физика Старусев Олег 22 У2 КИТ-64 3 Первая
    • КИТ-64 3 Первая 8 30 Высшая математика Деревянко Александр 304 ГАК КИТ-64 3 Вторая
    • КИТ-64 5 Вторая 12 35 Философия Старусев Олег 803 У1 КИТ-64 5 Первая
    • КИТ-64 5 Первая 12 35 Культурология Старусев Олег 501 У1 КИТ-64 5 Вторая
    • 12 record(s) selected.
    • 8. Выбрать коды всех дисциплин, которые имеют корень 'комп'
    • SELECT D.DisciplineNumber
    • FROM Discipline D
    • WHERE D.Name LIKE '%комп%'
    • Результат выборки:
    • DISCIPLINENUMBER
    • 54354565
    • 54354569
    • 9. Выбрать расписание не Первую неделю для группы КИТ-64
    • SELECT * FROM scheduleview
    • WHERE GroupName='КИТ-64' and WeekName='Первая'
    • ORDER 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
    • 15 record(s) selected.
    • 10. Для каждого профессора определить количество читаемых им предметов в группе 'КИТ-64'.
    • select Lecturer.LastName, Lecturer.FirstName,
    • count(DisciplineNumber)
    • from Lecturer, Lecture
    • where Lecture.LecturerID=Lecturer.LecturerID
    • AND
    • Lecturer.ACADEMICDEGREENAME='Профессор'
    • group by
    • Lecturer.LastName, Lecturer.FirstName
    • Результат выборки:
    • LASTNAME FIRSTNAME 3
    • Гладких Татьяна 2 Панченко Владимир 4Порошин Сергей 4 Солощук Михаил 6Фастовский Эдуард 4 5 record(s) selected.
    • 7.3 Проверка ограничений целостности
    • Для проверки триггера выполним запросы, первый будет вставлять и изменять записи в таблице лекций на значение дня недели больше 7.
    • UPDATE Lecture SET DayOfWeekNumber=8
    • DB21034E The command was processed as an SQL statement because it was not a
    • valid Command Line Processor command. During SQL processing it returned:
    • SQL0438N Application raised error with diagnostic text: "The DayOfWeekNumberis incorrect". SQLSTATE=75001
    • INSERT INTO LECTURE(GROUPNAME, LECTURERID, TIMEID, WEEKTYPEID, DISCIPLINENUMBER, DAYOFWEEKNUMBER, AUDITORIUM, BUILDINGNAME)
    • VALUES('КИТ-64', 27, 4, 1, '54354559', 9, '202', 'ГАК');
    • ------------------------------ Command Entered ------------------------------
    • INSERT INTO LECTURE(GROUPNAME, LECTURERID, TIMEID, WEEKTYPEID, DISCIPLINENUMBER, DAYOFWEEKNUMBER, AUDITORIUM, BUILDINGNAME)
    • VALUES('КИТ-64', 27, 4, 1, '54354559', 9, '202', 'ГАК') ;
    • DB21034E The command was processed as an SQL statement because it was not a valid Command Line Processor command. During SQL processing it returned:
    • SQL0438N Application raised error with diagnostic text: "The DayOfWeekNumber is incorrect". SQLSTATE=75001
    • Приложения
    • Приложение А. SQL-скрипты создания таблиц базы данных
    • CREATE TABLE DB2ADMIN.DISCIPLINE (
    • DISCIPLINENUMBER VARCHAR (20) NOT NULL,
    • NAME VARCHAR (250) NOT NULL ,
    • HOURS SMALLINT NOT NULL ,
    • PRIMARY KEY (DISCIPLINENUMBER)
    • CREATE TABLE DB2ADMIN.WEEKTYPE (
    • WEEKTYPEID SMALLINT GENERATED ALWAYS AS IDENTITY
    • (START WITH 1, INCREMENT BY 1, NO CACHE ) ,
    • NAME VARCHAR (100) NOT NULL ,
    • PRIMARY KEY (WEEKTYPEID)
    • CREATE TABLE DB2ADMIN.TIME (
    • TIMEID SMALLINT GENERATED ALWAYS AS IDENTITY
    • (START WITH 1, INCREMENT BY 1, NO CACHE ) ,
    • HOUR SMALLINT NOT NULL,
    • MINUTE SMALLINT NOT NULL,
    • PRIMARY KEY (TIMEID)
    • CREATE TABLE DB2ADMIN.CHAIRTYPE (
    • CHAIRTYPEID SMALLINT GENERATED ALWAYS AS IDENTITY
    • (START WITH 1, INCREMENT BY 1, NO CACHE ) ,
    • NAME VARCHAR (250) NOT NULL,
    • PRIMARY KEY (CHAIRTYPEID)
    • CREATE TABLE DB2ADMIN.UNIVERSITY (
    • UNIVERSITYID INTEGER GENERATED ALWAYS AS IDENTITY
    • (START WITH 1, INCREMENT BY 1, NO CACHE ) ,
    • NAME VARCHAR (100) NOT NULL,
    • ACCREDITATIONLEVEL SMALLINT NOT NULL,
    • CREATIONDATE DATE NOT NULL ,
    • ADDRESS VARCHAR (250),
    • PHONE VARCHAR (40),
    • PRIMARY KEY (UNIVERSITYID)
    • CREATE TABLE DB2ADMIN.DEPARTMENT (
    • DEPARTMENTID INTEGER GENERATED ALWAYS AS IDENTITY
    • (START WITH 1, INCREMENT BY 1, NO CACHE ) ,
    • UNIVERSITYID INTEGER NOT NULL ,
    • NAME VARCHAR (250) NOT NULL ,
    • CREATIONDATE DATE NOT NULL ,
    • PRIMARY KEY (DEPARTMENTID) ,
    • FOREIGN KEY (UNIVERSITYID) REFERENCES DB2ADMIN.UNIVERSITY (UNIVERSITYID)
    • CREATE TABLE DB2ADMIN.CHAIR (
    • CHAIRID INTEGER GENERATED ALWAYS AS IDENTITY
    • (START WITH 1, INCREMENT BY 1, NO CACHE ) ,
    • CHAIRTYPEID SMALLINT NOT NULL ,
    • DEPARTMENTID INTEGER ,
    • NAME VARCHAR (250) NOT NULL ,
    • CREATIONDATE DATE NOT NULL ,
    • PRIMARY KEY (CHAIRID) ,
    • FOREIGN KEY (CHAIRTYPEID) REFERENCES DB2ADMIN.CHAIRTYPE (CHAIRTYPEID) ,
    • FOREIGN KEY (DEPARTMENTID) REFERENCES DB2ADMIN.DEPARTMENT (DEPARTMENTID)
    • CREATE TABLE DB2ADMIN.LECTURER (
    • LECTURERID INTEGER GENERATED ALWAYS AS IDENTITY
    • (START WITH 1, INCREMENT BY 1, NO CACHE ) ,
    • CHAIRID INTEGER NOT NULL ,
    • LASTNAME VARCHAR (70) NOT NULL ,
    • FIRSTNAME VARCHAR (70) NOT NULL ,
    • MIDDLENAME VARCHAR (70) NOT NULL ,
    • ACADEMICDEGREENAME VARCHAR (120) NOT NULL ,
    • POST VARCHAR (250) NOT NULL ,
    • PRIMARY KEY (LECTURERID) ,
    • FOREIGN KEY (CHAIRID) REFERENCES DB2ADMIN.CHAIR (CHAIRID)
    • CREATE TABLE DB2ADMIN.LECTURE (
    • GROUPNAME VARCHAR (20) NOT NULL ,
    • LECTURERID INTEGER NOT NULL ,
    • DISCIPLINENUMBER VARCHAR (20) NOT NULL ,
    • TIMEID SMALLINT NOT NULL ,
    • WEEKTYPEID SMALLINT NOT NULL ,
    • DAYOFWEEKNUMBER SMALLINT NOT NULL ,
    • AUDITORIUM VARCHAR (20) NOT NULL ,
    • BUILDINGNAME VARCHAR (20) NOT NULL ,
    • PRIMARY KEY (GROUPNAME, LECTURERID, TIMEID, WEEKTYPEID, DAYOFWEEKNUMBER) ,
    • FOREIGN KEY (LECTURERID) REFERENCES DB2ADMIN.LECTURER (LECTURERID) ,
    • FOREIGN KEY (DISCIPLINENUMBER) REFERENCES DB2ADMIN.DISCIPLINE (DISCIPLINENUMBER) ,
    • FOREIGN KEY (TIMEID) REFERENCES DB2ADMIN.TIME (TIMEID) ,
    • FOREIGN KEY (WEEKTYPEID) REFERENCES DB2ADMIN.WEEKTYPE (WEEKTYPEID)
    • инфологический процедурный база целостность
    • Приложение Б. SQL-скрипты создания триггеров
    • CREATE TRIGGER TWeekValid
    • NO CASCADE BEFORE INSERT ON Lecture
    • REFERENCING NEW AS new
    • FOR EACH ROW MODE DB2SQL
    • WHEN
    • new. DAYOFWEEKNUMBER is not null
    • AND (new. DAYOFWEEKNUMBER < 0 OR new. DAYOFWEEKNUMBER > 7)
    • SIGNAL SQLSTATE '75001' ('The DayOfWeekNumber is incorrect');
    • CREATE TRIGGER TWeekValidU
    • NO CASCADE BEFORE UPDATE ON Lecture
    • REFERENCING NEW AS new
    • FOR EACH ROW MODE DB2SQL
    • WHEN
    • new.DAYOFWEEKNUMBER is not null
    • AND (new.DAYOFWEEKNUMBER < 0 OR new.DAYOFWEEKNUMBER > 7)
    • SIGNAL SQLSTATE '75001' ('The DayOfWeekNumber is incorrect');
    • Приложение В. Полные выборки таблиц
    • SELECT * FROM WeekType
    • WEEKTYPEID NAME
    • 1 Первая
    • 2 Вторая
    • 3 Модульная
    • 4 Зачетная
    • 4 record(s) selected.
    • SELECT * FROM ChairType
    • CHAIRTYPEID NAME
    • 1 Общая
    • 2 Факультетская
    • 3 Выпускающая
    • 4 Базовая
    • 4 record(s) selected.
    • SELECT * FROM University
    • UNIVERSITYID NAME ACCREDITATIONLEVEL CREATIONDATE ADDRESS PHONE
    • 1 Харьковский Национальный университет 4 29/01/1805 Харьковский Национальный Университет имени В.Н. Каразина 61077, Харьков, площадь Свободы, 4. 707-53-75
    • 2 Национальный Технический Университет - "Харьковский политехнический институт" 4 03/09/1885 Украина 61002, г. Харьков, ул. Фрунзе, 21 706-27-49
    • 3 Государственный Автомобильно-Дорожный Технический Университет 3 05/08/1925 61002, Украина, г. Харьков, ул.Петровского, 25 700-38-65
    • 4 Государственный аэрокосмический университет им. Н.Е.Жуковского "ХАИ" 4 06/10/1922 61070, Украина, Харьков, ул.Чкалова д.17 44-11-31
    • 5 Харьковский Государственный Технический университет Радиоэлектроники 4 02/07/1966 г. Харьков, пр. Ленина 14 702-15-15
    • 5 record(s) selected.
    • SELECT * FROM Department
    • DEPARTMENTID UNIVERSITYID NAME CREATIONDATE
    • 1 1 Биологический 01/09/1900
    • 2 1 Геолого-географический 01/09/1910
    • 3 1 Экономический 01/09/1950
    • 4 1 Иностранных языков 01/09/1920
    • 5 2 Компьютерных и информационных технологий 01/09/2003
    • 6 2 Автоматики и приборостроения 01/09/1995
    • 7 2 Инженерно-физический 01/09/1985
    • 8 2 Электроэнергетический 01/09/1965
    • 9 3 Автомобильный 01/09/1965
    • 10 3 Дорожно-строительный 01/09/1975
    • 11 3 Механический 01/09/1960
    • 12 3 Управления и бизнеса 01/09/1990
    • 13 4 Самолетостроения 01/09/1960
    • 14 4 Авиационных двигателей 01/09/1958
    • 15 4 Систем управления ЛА 01/09/1970
    • 16 4 Ракетно-космической техники 01/09/1975
    • 17 4 Радиотехнических систем ЛА 01/09/1976
    • 18 5 Компьютерных наук 01/09/1992
    • 19 5 Компьютерной инженерии и управления 01/09/1982
    • 20 5 Прикладная математика и менеджмент 01/09/1981
    • 21 5 Радиотехнический 01/09/1975
    • 22 5 Телекоммуникации и измерительной техники 01/09/1976
    • 22 record(s) selected.
    • SELECT * FROM Chair
    • CHAIRID CHAIRTYPEID DEPARTMENTID NAME CREATIONDATE
    • 1 2 1 Биохимии 01/09/1901
    • 2 2 1 Ботаники 01/09/1903
    • 3 2 1 Зоологии и экологии животных 01/09/1905
    • 4 2 1 Микологии и фитоиммунологии 01/09/1910
    • 5 2 1 Физиологии и биологии растений 01/09/1902
    • 6 2 1 Генетики и цитологии 01/09/1915
    • 7 2 2 Минералогии 01/09/1915
    • 8 2 2 Геологии 01/09/1918
    • 9 2 2 Гидрогеологии 01/09/1925
    • 10 2 2 Физической географии и картографии 01/09/1932
    • 11 2 2 Социально-экономической географии 01/09/1948
    • 12 2 3 Финансов и кредита 01/09/1990
    • 13 2 3 Экономической кибернетики 01/09/1983
    • 14 2 3 Статистики и учета 01/09/1960
    • 15 2 3 Экономики и менеджмента 01/09/1995
    • 16 2 3 Маркетинга 01/09/1996
    • 17 2 4 Английской филологии 01/09/1930
    • 18 2 4 Английского языка 01/09/1925
    • 19 2 4 Немецкого и французского языков 01/09/1923
    • 20 2 5 Информатики и интеллектуальной собственности 01/09/2003
    • 21 2 5 Видео-, аудио- и кинотехника 01/09/2003
    • 22 2 5 Вычислительная техника и программирование 01/09/1993
    • 23 2 5 Системы информации 01/09/1995
    • 24 2 6 Автоматика и управление в технических системах 01/09/1995
    • 25 2 6 Вычислительно-информационная техника 01/09/1996
    • 26 2 6 Радиоэлектроника 01/09/1995
    • 27 2 7 Динамика и прочность машин 01/09/1985
    • 28 2 7 Система и процессы управления 01/09/1986
    • 29 2 7 Газогидромеханика и тепломассообмен 01/09/1988
    • 30 2 8 Электрических станций 01/09/1965
    • 31 2 8 Автоматизация энергосистем 01/09/1977
    • 32 2 8 Электроизоляционной, кабельной и конденсаторной техники 01/09/1969
    • 33 2 9 Автомобилей 01/09/1967
    • 34 2 9 Двигателей внутреннего сгорания 01/09/1969
    • 35 2 9 Деталей машин и теории механизмов и машин 01/09/1972
    • 36 2 9 Теоретической механики и гидравлики 01/09/1975
    • 37 2 9 Технической эксплуатации и сервиса автомобилей 01/09/1979
    • 38 2 10 Строительства и эксплуатации автомобильных дорог 01/09/1976
    • 39 2 10 Изыскания и проектирования автомобильных дорог 01/09/1978
    • 40 2 10 Экологии и химии 01/09/1979
    • 41 2 10 Мостов, конструкций и строительной механики 01/09/1979
    • 42 2 11 Автоматизации и компьютерно-интегрированных технологий 01/09/1979
    • 43 2 11 Инженерной и компьютерной графики 01/09/1982
    • 44 2 11 Безопасности жизнедеятельности 01/09/1962
    • 45 2 11 Технологии металлов и материаловедения 01/09/1975
    • 46 2 12 Международной экономики 01/09/1998
    • 47 2 12 Экономики предприятий 01/09/1992
    • 48 2 12 Экономической теории и права 01/09/1991
    • 49 2 12 Менеджмента 01/09/1999
    • 50 2 12 Учета и аудита 01/09/1999
    • 51 2 13 Самолетостроения 01/09/1962
    • 52 2 14 Авиационных двигателей 01/09/1959
    • 53 2 15 Систем управления ЛА 01/09/1971
    • 54 2 16 Ракетно-космической техники 01/09/1976
    • 55 2 17 Радиотехнических систем ЛА 01/09/1976
    • 56 2 18 Информационно управляющие системы (ИУС) 01/09/1992
    • 57 2 18 Системотехники (СТ) 01/09/1992
    • 58 2 18 Программное обеспечение ЭВМ (ПО ЭВМ) 01/09/1993
    • 59 2 18 Искусственного интеллекта (ИИ) 01/09/1995
    • 60 2 19 Электронно-вычислительных машин (ЭВМ) 01/09/1982
    • 61 2 19 Автоматизация проектирования вычислительной техники (АПВТ) 01/09/1985
    • 62 2 19 Безопасность информационных технологий (БИТ) 01/09/1986
    • 63 2 19 Философии 01/09/1995
    • 64 2 20 Прикладной математики (ПМ) 01/09/1982
    • 65 2 20 Информатики (ИНФ) 01/09/1981
    • 66 2 20 Экономической кибернетики (ЭК) 01/09/1986
    • 67 2 20 Высшей математики (ВМ) 01/09/1981
    • 68 2 20 Социальная информатика (СИ) 01/09/2005
    • 69 2 21 Радиоэлектронных систем (РЭС) 01/09/1976
    • 70 2 21 Основ радиотехники (ОРТ) 01/09/1975
    • 71 2 21 Радиоэлектронных устройств 01/09/1979
    • 72 2 21 Иностранного языка 01/09/1981
    • 73 2 22 Телекоммуникационных систем и сетей (ТКСС) 01/09/1976
    • 74 2 22 Cетей связи (СС) 01/09/1977
    • 75 2 22 Метрология и измерительная техника (МИТ) 01/09/1978
    • 75 record(s) selected.
    • SELECT * FROM Lecturer
    • LECTURERID CHAIRID LASTNAME FIRSTNAME MIDDLENAME ACADEMICDEGREENAME POST
    • 1 Перский Евгений Ефроимович Профессор Заведующий кафедрой
    • 2 Догадина Татьяна Васильевна Профессор Заведующий кафедрой
    • 3 Бартенев Александр Федорович Профессор Заведующий кафедрой
    • 4 Глущенко Василий Иванович Профессор Заведующий кафедрой
    • 5 Жмурко Василий Васильевич Профессор Заведующий кафедрой
    • 6 Воробьева Людмила Ивановна Профессор Заведующий кафедрой
    • 7 Петров Илья Михайлович Профессор Заведующий кафедрой
    • 8 Тхоржевский Эдуард Станиславович Профессор Заведующий кафедрой
    • 9 Немець Константин Аркадьевич Профессор Заведующий кафедрой
    • 10 Левицкий Иван Юрьевич Профессор Заведующий кафедрой
    • 11 Черванев Игорь Григорьевич Профессор Заведующий кафедрой
    • 12 Глущенко Виктор Владимирович Профессор Заведующий кафедрой
    • 13 Михайленко Виталий Григорьевич Профессор Заведующий кафедрой
    • 14 Селиванов Владимир Михайлович Профессор Заведующий кафедрой
    • 15 Бабич Владимир Петрович Профессор Заведующий кафедрой
    • 16 Семеняк Инна Влодимировна Профессор Заведующий кафедрой
    • 17 Солощук Людмила Васильевна Профессор Заведующий кафедрой
    • 18 Ужик Валентина Алексеевна Профессор Заведующий кафедрой
    • 19 Пасинок Валентина Григорьевна Профессор Заведующий кафедрой
    • 20 Солощук Михаил Николаевич Профессор Заведующий кафедрой
    • 21 Гладких Татьяна Валентиновна Профессор Лектор
    • 22 Леонов Сергей Юрьевич Доцент Лектор
    • 23 Деревянко Александр Сергеевич Доцент Лектор
    • 24 Фастовский Эдуард Георгиевич Профессор Лектор
    • 25 Сомхиева Ольга Сергеевна Доцент Лектор
    • 26 Старусев Олег Геннадиевич Доцент Лектор
    • 27 Гуридина Ирина Валерьевна Старший преподаватель Лектор
    • 28 Бреславец Виталий Сергеевич Старший преподаватель Лектор
    • 29 Пустовойтов Павел Евгеньевич Ассистент Лектор
    • 30 Панченко Владимир Иванович Профессор Лектор
    • 31 Порошин Сергей Михайлович Профессор Лектор
    • 32 Домнин Феликс Аркадьевич Профессор Заведующий кафедрой
    • 33 Кравец Валерий Алексеевич Профессор Заведующий кафедрой
    • 34 Качанов Петр Алексеевич Профессор Заведующий кафедрой
    • 35 Кондрашов Сергей Иванович Профессор Заведующий кафедрой
    • 36 Таран Виталий Иванович Профессор Заведующий кафедрой
    • 37 Львов Геннадий Иванович Профессор Заведующий кафедрой
    • 38 Бреславский Дмитрий Васильевич Профессор Заведующий кафедрой
    • 39 Мацевытый Юрий Михайлович Профессор Заведующий кафедрой
    • 40 Вороновский Геннадий Кириллович Профессор Заведующий кафедрой
    • SELECT * FROM Discipline
    • DISCIPLINENUMBER NAME HOURS
    • 54354551 Высшая математика 120
    • 54354552 Высшая физика 100
    • 54354553 История Украины 90
    • 54354554 Основы экономической теории 150
    • 54354555 Социология 128
    • 54354556 Философия 132
    • 54354557 Культурология 70
    • 54354558 Религиеведение 73
    • 54354559 Финансы 115
    • 54354560 История науки и техники 80
    • 54354561 Основы безопасности жизнедеятельности 80
    • 54354562 Охрана труда 80
    • 54354563 Лингвистика 110
    • 54354564 Структуры организации данных 120
    • 54354565 Методы и средства компьютерных и информационных технологий 135
    • 54354566 Основы программирования и алгоритмические языки 108
    • 54354567 Дискретная математика 100
    • 54354568 Теория вероятности 130
    • 54354569 Компьютерная графика 120
    • 54354570 Организация баз данных и знаний 120
    • 54354571 Объектно-ориентированное программирование 125
    • 54354572 Электротехника 118
    • 54354573 Схемотехника 110
    • 54354574 Микропроцессорные системы 112
    • 54354575 Системное программирование 111
    • 54354576 Теория алгоритмов 90
    • 54354577 Основы искусственного интеллекта 95
    • 54354578 Сети 80
    • 28 record(s) selected.
    • Размещено на Allbest.ru

Подобные документы

  • Построение инфологической концептуальной модели предметной области. Структура базы данных Microsoft Office Access. Формы, запросы и отчеты. Создание форм, запросов и отчетов в базах данных. Схема данных физической и логической сущности в Erwin 4.0.

    курсовая работа [5,1 M], добавлен 13.12.2011

  • Типы данных языка SQL, определенные стандартом ISO. Средства поддержки целостности данных. Введение ограничений для доменов. Разработка рабочего проекта для автосалона. Построение информационной схемы базы. Создание форм для занесения данных в таблицы.

    курсовая работа [2,5 M], добавлен 29.01.2012

  • Сущность базы данных. Процесс построения концептуальной модели. Построение реляционной модели, создание ключевого поля. Процесс нормализации. Проектирование базы данных в ACCESS. Порядок создание базы данных. Создание SQL запросов и работа в базе данных.

    курсовая работа [185,6 K], добавлен 08.11.2008

  • Исследование процесса разработки базы данных, позволяющей определять состояние кафедр и факультетов Дагестанского государственного технического университета. Характеристика иерархической, сетевой, реляционной, даталогической и физической моделей данных.

    курсовая работа [156,7 K], добавлен 08.02.2012

  • Система управления базой данных (СУБД), централизованное обеспечение безопасности и целостности данных, защита от несанкционированного доступа. Построение концептуальной и реляционной моделей. Процесс нормализации. Проектирование базы данных в ACCESS.

    курсовая работа [1,8 M], добавлен 29.10.2008

  • Построение инфологической, логической и физической модели предметной области. Ограничения целостности базы данных. Организация ввода и корректировки данных. Описание информационных потребностей пользователей. Реализация запросов, построение отчетов.

    курсовая работа [2,9 M], добавлен 22.01.2015

  • Особенности проектирования программы на языке С++ для обработки данных из таблиц базы данных. Основные функции программы, создание концептуальной модели базы данных и диаграммы классов, разработка интерфейса пользователя и запросов к базе данных.

    курсовая работа [2,1 M], добавлен 08.06.2012

  • Автоматизация работы пользователя по поиску, просмотру и редактированию информации о работниках, соискателях, вакансиях. Построение информационно-логической и физической моделей данных. Создание базы данных в СУБД MS SQL Server. Описание SQL запросов.

    курсовая работа [1,8 M], добавлен 07.08.2013

  • Особенности разработки инфологической модели и создание структуры реляционной базы данных. Основы проектирования базы данных. Разработка таблиц, форм, запросов для вывода информации о соответствующей модели. Работа с базами данных и их объектами.

    курсовая работа [981,4 K], добавлен 05.11.2011

  • Построение концептуальной модели, процесс моделирования смыслового наполнения базы данных. Основные компоненты концептуальной модели. Построение реляционной модели. Целостность данных в реляционной базе. Нормализация. Проектирование базы данных в ACCESS.

    курсовая работа [1,8 M], добавлен 29.10.2008

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.