Банки данных и знаний

Автор работы: Пользователь скрыл имя, 09 Декабря 2013 в 18:42, курсовая работа

Описание работы

Базы данных являются составной частью информационной системы (ИС), осуществляющей хранение и обработку данных в широком смысле, включая ввод и корректировку данных, удаление данных, выполнение различных запросов, арифметические и логические преобразования данных, составление отчетов, выдачу информации в различных формах на экране и в бумажном виде.

Содержание работы

Введение 3
1. Проектирование базы данных 6
1.1. Инфологическая модель базы данных 6
1.1.1. Характеристика связей и язык моделирования 6
1.1.2. Классификация сущностей 7
1.1.3. О первичных и внешних ключах 7
1.1.4. Ограничения целостности 8
2. СУБД Oracle Database XE 9
2.1. Назначения языка SQL, основные операторы 9
2.2. Приложения на СУБД Oracle Database XE 11
3. Постановка задачи 12
3.1. Описание инфологической модели базы данных ВУЗа на языке инфологического проектирования 12
Инфологическая модель БД созданная в CASEStudio(рис.10) 17
3.3. Вертикальная диаграмма 17
3.4. Создание таблицы на СУБД Oracle Database XE 18
3.5. Создание запросов на SQL 19
3.6. Создание пользовательских приложений на СУБД Oracle Database XE 24
4. Заключение 29
5. Литература 30

Файлы: 1 файл

Курсовой проект.doc

— 1.41 Мб (Скачать файл)

Учебный процесс  регламентируется учебным планом, в  котором указывается, какие учебные дисциплины на каких курсах и в каких семестрах читаются, с указанием количества часов на каждый вид занятий по дисциплине (виды занятий: лекции, семинары, лабораторные работы, консультации, курсовые работы, ИР и т.д.) и формы контроля (зачет, экзамен). Сведения о проведенных экзаменах и зачетах собираются деканатом.

3.1. Описание инфологической модели базы данных ВУЗа на языке инфологического проектирования

Student(id_stud, imya_stud, familiya_stud, data_rojd, stipendia, deti, pol,  id_gruppa)

Gruppa(id_gruppa, gruppa, kurs, id_fakultet)

Fakultet(id_fakultet, fakultet, den_sozdaniya, imya_dekana, familiya_dekana)

Kafedra(id_kafedra, kafedra, id_fakultet)

Prepod(id_prep, imya_prep, familiya_prep, kategoriya, zarplata, id_kafedra)

Vid_zanyatiy(id_zanyatiya, vid)

Predmet(id_predmet, predmet)

Otsenki(id_stud, id_predmet, otsenka)

Raspisaniya(id_zanyatiya, id_prep, id_predmet, id_gruppa, den)

Ekzamen(id_ekzamen, id_prep, id_predmet, id_gruppa, semestr)

Bali_po_ekzamenam(id_stud, id_ekzamen, ball)

 

Таблица 1. Таблица “Student”

Student

имя

ключ

тип

Домен

id студента

id_stud

первичный

целое

Уникальное

Имя студента

imya_stud

 

текстовое

а-я, А-Я

Фамилия студента

familiya_stud

 

текстовое

а-я, А-Я

Дата рождения студента

data_rojd

 

текстовое

1980-1994

Стипендиа студента

stipendia

 

дата

183500, 134866, 255460

Наличие детей

deti

 

текстовое

есть,  нет

Пол студента

pol

 

текстовое

М, Ж

id группы

id_gruppa

внешний

целое

Набор значений из поля id_gruppa таблицы Gruppa


 

Таблица 2. Таблица “Gruppa”

Gruppa

имя

ключ

тип

Домен

id группы

id_gruppa

первичный

целое

Уникальное

Название группы

gruppa

 

текстовое

A-Z, “-”, 0-9

Курс группы

kurs

 

целое

1, 2, 3, 4

id факултета

id_fakultet

внешний

текстовое

Набор значений из поля  id_fakultet таблицы Fakultet


 

Таблица 3. Таблица “Fakultet”

Fakultet

имя

ключ

тип

Домен

id факультета

id_fakultet

первичный

целое

Уникальное

Название факультета

fakultet

 

текстовое

а-я, А-Я

Год образования

den_sozdaniya

 

Дата

1931-2008

Имя декана

imya_dekana

 

текстовое

а-я, А-Я

Фамилия декана

familiya_dekana

 

текстовое

а-я, А-Я


 

 

 

 

 

 

 

 

Таблица 4. Таблица “Kafedra”

Kafedra

имя

ключ

тип

Домен

Id кафедры

id_kafedra

первичный

целое

Уникальное

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

kafedra

 

текстовое

А-Я, а-я

id факультета

id_fakultet

внешний

Целое

Набор значений из поля  id_fakultet таблицы Fakultet


 

Таблица 5. Таблица “Prepod”

Prepod

имя

ключ

тип

Домен

id преподавателя

id_prep

первичный

целое

Уникальное

Имя преподователья

imya_prep

 

текстовое

А-Я, а-я

Фамилия преподователья

familiya_prep

 

текстовое

А-Я, а-я

Категория

kategoriya

 

текстовое

А-Я, а-я

Зарплата преподователья

zarplata

 

текстовое

0-9, сум

id кафедры

id_kafedra

внешний

целое

Набор значений из поля  id_kafedra таблицы Kafedra


 

Таблица 6. Таблица “Vid_zanyatiy”

Vid_zanyatiy

имя

ключ

тип

Домен

id занятия

id_zanyatiya

первичный

целое

Уникальное

Вид занятия

vid

 

текстовое

семинар, консультфция, лекция, курсавая работа, лабораторная работа


 

Таблица 7. Таблица “Predmet”

Predmet

имя

ключ

тип

Домен

id предмета

id_predmet

первичный

целое

Уникальное

Название предмета

predmet

 

текстовое

а-я, А-Я


 

Таблица 8. Таблица “Otsenki”

Otsenki

имя

ключ

тип

Домен

id студента

id_stud

внешний

целое

Набор значений из поля  id_stud таблицы Student

id предмета

id_predmet

внешний

целое

Набор значений из поля  id_predmet таблицы Predmet

Отценка студента по предмету

otsenka

 

целое

56-100


 

 

 

 

 

 

Таблица 9. Таблица “Raspisaniya”

Raspisaniya

имя

ключ

тип

Домен

id занятия

id_zanyatiya

внешний

целое

Набор значений из поля  id_zanyatiya таблицы Vid_zanyatiya

id преподавателя

id_prep

внешний

целое

Набор значений из поля  id_prep таблицы Prepod

id предмета

id_predmet

внешний

целое

Набор значений из поля  id_predmet таблицы Predmet

id группы

id_gruppa

внешний

целое

Набор значений из поля  id_gruppa таблицы Gruppa

день занятия

den

 

текстовое

понедельник, вторник, среда, четверг, пятница, суббота


 

Таблица 10. Таблица “Ekzamen”

Ekzamen

имя

ключ

тип

Домен

id экзамена

id_ekzamen

внешний

целое

Набор значений из поля  id_ekzamen таблицы Vid_ekzamen

id преподавателя

id_prep

внешний

целое

Набор значений из поля  id_prep таблицы Prepod

id предмета

id_predmet

внешний

целое

Набор значений из поля  id_predmet таблицы Predmet

id группы

id_gruppa

внешний

целое

Набор значений из поля  id_gruppa таблицы Gruppa

семестр

den

 

целое

1, 2, 3, 4, 5, 6, 7, 8


 

Таблица 11. Таблица “Bali_po_ekzamenam”

Bali_po_ekzamenam

имя

ключ

тип

Домен

id студента

id_stud

внешний

целое

Набор значений из поля  id_stud таблицы Student

id экзамена

id_ekzamen

внешний

целое

Набор значений из поля  id_ekzamen таблицы Ekzamen

Балы студента по экзамену

otsenka

 

целое

56-100


 

3.2. Расширенная инфологическая модель ER модель

 

На рис. 9 изображена ER диаграмма базы данных ВУЗа

 

рис. 9 ER диаграмма БД

 

 

Инфологическая  модель БД созданная в CASEStudio(рис.10)

рис. 10 ER диаграмма в CASEStudio БД

3.3. Вертикальная диаграмма

рис. 11 Вертикальная диаграмма БД

3.4. Создание таблицы на СУБД Oracle Database XE

CREATE TABLE RASPISANIYA (

ID_ZANYATIYA        NUMBER (15),

ID_PREP             NUMBER (15),

ID_PREDMET          NUMBER (15),

ID_GRUPPA           NUMBER (15),

DEN                 VARCHAR2 (50));

 

рис. 12 Таблица “Raspisaniya”

 

CREATE TABLE STUDENT (

ID_STUD             NUMBER (15) NOT NULL PRIMARY KEY,

IMYA_STUD           VARCHAR2 (50),

FAMILIYA_STUD       VARCHAR2 (50),

DATA_ROJD_STUD      DATE,

STIPENDIA           NUMBER (15),

DETI                VARCHAR2 (10),

ID_GRUPPA           NUMBER (15),

GOROD               VARCHAR2 (100),

POL                 VARCHAR2 (4));

 

рис. 13 Таблица “Student”

3.5. Создание запросов на SQL

Запросы:

1. Получить перечень и общее число студентов указанных групп либо указанного курса (курсов) факультета полностью, году рождения, возрасту, признаку наличия детей, по признаку получения и размеру стипендии:

а) По группам(рис.14):

Select "STUDENT"."IMYA_STUD" as "Имя",

"STUDENT"."FAMILIYA_STUD" as "Фамилия",

"STUDENT"."DATA_ROJD_STUD" as "Дата рожд.",

"STUDENT"."POL" as "Пол",

"STUDENT"."GOROD" as "Место жител.",

"STUDENT"."STIPENDIA" as "Стипендия",

"STUDENT"."DETI" as "Наличия детей",

"GRUPPA"."GRUPPA" as "Группа"

From "GRUPPA" "GRUPPA",

"STUDENT" "STUDENT"

Where "STUDENT"."ID_GRUPPA"="GRUPPA"."ID_GRUPPA"

  And "GRUPPA"."ID_GRUPPA" =1

 

рис. 14 Результат запроса

б) По Курсам(рис.15):

Select "STUDENT"."IMYA_STUD" as "Имя",

"STUDENT"."FAMILIYA_STUD" as "Фамилия",

"STUDENT"."DATA_ROJD_STUD" as "Дата Рожд.",

"STUDENT"."POL" as "Пол",

"STUDENT"."GOROD" as "Место Житель.",

"STUDENT"."STIPENDIA" as "Стипендия",

"STUDENT"."DETI" as "Наличия детей",

"GRUPPA"."GRUPPA" as "Группа",

"GRUPPA"."KURS" as "Курс"

 From "GRUPPA" "GRUPPA",

"STUDENT" "STUDENT"

 Where "STUDENT"."ID_GRUPPA"="GRUPPA"."ID_GRUPPA"

 And "GRUPPA"."KURS" =3

рис. 15 Результат запроса

 

 

2. Получить список и общее число студентов указанных групп, сдавших зачет либо экзамен по указанной дисциплине с указанной оценкой:

а) Оценка по экзамену(рис.16):

Select "STUDENT"."IMYA_STUD" as "Имя",

"STUDENT"."FAMILIYA_STUD" as "Фамилия",

"PREDMET"."IMYA_PREDMET" as "Предмет",

"BALI_PO_EKZAMENAM"."BALL" as "Балл по эк."

From "PREDMET" "PREDMET",

"EKZAMEN" "EKZAMEN",

"BALI_PO_EKZAMENAM" "BALI_PO_EKZAMENAM",

"STUDENT" "STUDENT"

Where "STUDENT"."ID_STUD"="BALI_PO_EKZAMENAM"."ID_STUD"

And "BALI_PO_EKZAMENAM"."ID_EKZAMEN"="EKZAMEN"."ID_EKZAMEN"

Информация о работе Банки данных и знаний