Цель работы: ознакомиться с разработкой представлений в MySQL.
Задание к работе:
1) Ознакомится с принципами работой СУБД mysql.
2) Изучить режим работы конструктора и sql редактора.
3)Создать таблицы в режиме конструктора и путем ввода sql кода.
4Определить индексы и первичные ключи.
5)Создать связи между таблицами (внешние ключи).
6)Создать ограничения для таблиц, если это необходимо.
7)Создать представления в MySQL
Ход работы:
Представления в MySQL:
1 Список Дисциплин
SQL код:
create view one as SELECT nazvanie
FROM disciplina d;
Рис 1 - Таблица «Дисциплина»
Рис 2 – Результат запроса 1
Disciplina |
Kod_disciplini Nazvanie |
Рис 3 – таблица «дисциплина»
2 Информация о всех студентах
SQL код:
create view two as SELECT familija, imja, Otchestvo, data_rojdenija, Pol
FROM student;
Рис 4 – таблица «студент»
Рис 5 – результат запроса 2
Student |
Kod_studenta Familija Imja Otchestvo Data_roijdenija Pol Dom_adress |
Рис 6 – «таблица студент»
3 Список групп определенной специальности
SQL код:
create view three as SELECT s.Kurs, s.gruppa, s.Podgruppa
FROM spisok_grupp s, spisok_cpecialnostej c
WHERE c.nazvanie = IT
AND c.kod_specialnosti = s.kod_specialnosti;
Рис 7 – «таблица список групп»
Рис 8 – результат запроса 3
Spisok_grupp |
Id_gruppi Kod_specialnosti Kurs Gruppa podgruppa |
spisok_cpecialnoste |
Kod_specialnosti nazvanie |
Рис 9 – Таблицы «список групп» и «список специальностей»
4 Список преподавателей со званием профессор
SQL код:
create view four as SELECT * FROM prepodavatelj
Where zvanie = 'professor'
Рис 10 – таблица «преподаватели»
Рис 11 – результат запроса 4
Prepodavatelj |
Kod_prepodavatelja Familija Imja Otchestvo Zvanie Data_rojd Pol |
Рис 12 – Таблица «Преподаватели»
5 список специальностей
SQL код:
create view five asSELECT s.nazvanie
FROM spisok_specialnostej s;
Рис 13 – «Список специальностей»
Рис 14 – результат запроса 5
spisok_specialnostej |
Kod_specialnosti nazvanie |
Рис 14 – список специальностей
6 Дисциплины читаемые всеми преподавателями
SQL код:
create view six as SELECT p.familija, p.imja, p.otchestvo, d.nazvanie
FROM prepodavatelj p, disciplina d, predmet t
WHERE p.kod_prepodavatelja = t.kod_prepodavatelja
AND t.kod_disciplini = d.kod_disciplini
Рис 15 – таблица «список преподавателей»
Рис 16 – «таблица Дисциплина»
Рис 17 – Результат запроса 6
prepodavatelj |
Kod_prepodavatelja Familija Imja Otchestvo Zvanie Data_rojd pol |
Predmet |
Kod_prepodavatelja Kod_disciplini |
Disciplina |
Kod_disciplini nazvanie |
Рис 18 – Таблицы «дисциплина» «предмет» «преподаватель»
7 Успеваемость определенного студента
SQL код:
create view seven as SELECT s.familija, s.imja, s.otchestvo, d.nazvanie, u.ocenka, u.data
From student s, uspevaemostj u, disciplina d
WHERE s.kod_studenta = 1
and s.kod_studenta = u.kod_studenta
and u.kod_disciplini = d.kod_disciplini
Рис 19 – таблица «Студент»
Рис 20 – таблица «Успеваемость»
Рис 21 – таблица «Дисциплина»
Рис 22 – Результат запроса
8 Средний балл определенного студента
SQL код:
create view eight as SELECT s.familija, s.imja, s.otchestvo, avg(u.ocenka) as srednee
From student s, uspevaemostj u
WHERE s.kod_studenta = 1
and s.kod_studenta = u.kod_studenta
Group By s.kod_studenta
Рис 23 – таблица «студент»
Рис 24 – таблица «успеваемость»
Рис 25 – результат запроса 8
9 Студенты имеющие надбавку к стипендии
SQL код:
create view nine as SELECT s.familija, s.imja, s.otchestvo, t.nadbavka
From student s, stip_nadb t
WHERE t.nadbavka > 0
and s.kod_studenta = t.kod_studenta
Group By s.kod_studenta
Рис 26 – таблица «Студент»
Рис 27 – «надбавка к стипендии»
Рис 28 – результат запроса 9
10 Инфо о студенте (фио ,курс , группа, Дата поступления, комментарий, размер стипендии,надбавка)
SQL код:
create view ten as ELECT s.familija, s.imja, s.otchestvo, sp.kurs, sp.gruppa, p.data_postuplenija, p.komment, z.razmer_stip, sn.nadbavka
FROM student s, spisok_grupp sp, postuplenie p, stipendija z, stip_nadb sn, gruppi gg
WHERE s.kod_studenta = gg.kod_studenta
AND gg.id_gruppi = sp.id_gruppi
AND s.kod_studenta = p.kod_studenta
AND s.kod_studenta = sn.kod_studenta
AND sn.kod_stipendii = z.kod_stipendii;
Рис 29 – таблица «Студент»
Рис 30 – таблица «список групп»
Рис 31 – таблица «поступление»
Рис 32 – таблица «стипендия»
Рис 33 – надбавка к стипендии
Рис 34 – таблица «Группы»
Рис 35 – результат запроса 10
Spisok_grupp |
Id_gruppi(pk) Kod_specialnosti Kurs Gruppa Podgruppa |
Gruppi |
Kod_studenta(fk) id_gruppi(fk) |
Student |
Kod_studenta(pk) Familija Imja Otchestvo Data_rojdenija Pol Dom_adress |
Postuplenie |
Kod_studenta(fk) Data_postuplenija kommentarij |
Stipendija |
Kod_stipendii Naimenovanie Razmer_stipendii |
Stip_nadb |
Kod_studenta(fk) Kod_stipendii(fk) nadbavka |
Рис 36 – связи между используемыми таблицами
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.