- •Оглавление
- •Глава 1 Представление данных 6
- •Глава 2 Реляционные базы данных 10
- •Глава 3 Язык структурированных запросов 42
- •Глава 4 Задание к выполнению лабораторных работ 72
- •Глава 5 Курсовая работа 97 Введение
- •Представление данных
- •Уровни представления данных
- •Инфологическая модель «сущность-связь»
- •Основные понятия
- •Характеристика связей
- •Вопросы для самопроверки
- •Реляционные базы данных
- •Основные понятия
- •Объекты реляционной структуры
- •Операции реляционной алгебры
- •Неопределенные значения
- •Ограничения целостности
- •Разработка реляционной базы данных
- •Основные предпосылки
- •Нормализация
- •Нормальные формы
- •Правила нормализации
- •Алгоритм нормализации
- •Нормализация в примерах.
- •Заключение
- •Вопросы для самопроверки
- •Язык структурированных запросов
- •Основные понятия
- •Типы данных
- •Операции над данными и null
- •Выбор данных из базы
- •Выбор данных из базы – оператор join
- •Выбор данных из базы – источник данных запрос
- •Управление структурой базы данных
- •Типы команд управления структурой
- •Типы объектов структуры
- •Создание таблицы
- •Удаление таблицы
- •Создание представления
- •Удаление представления
- •Изменение представления
- •Создание триггера
- •Изменение данных
- •Удаление данных
- •Ограничения целостности при манипулировании данными
- •Пример создания базы данных
- •Заключение
- •Вопросы для самопроверки
- •Задание к выполнению лабораторных работ
- •Лабораторная работа №1. Изучение команды select – простые запросы
- •Задания для самостоятельной работы
- •Контрольные вопросы
- •Содержание отчета
- •Лабораторная работа №2. Изучение команды select – запрос из нескольких источников
- •Задания для самостоятельной работы
- •Контрольные вопросы
- •Видео прокат
- •Вариант 2 Биржа
- •Вариант 3 Биржа труда
- •Вариант 4 Коктейли
- •Вариант 5 Урожай
- •Вариант 6 Фитнес центр
- •Вариант 7 Овощная база
- •Вариант 8 Оборудование
- •Вариант 9 Курортная карта
- •Вариант 10 осаго
- •Контрольные вопросы
- •Содержание отчета
- •Лабораторная работа №3. Разработка структуры базы данных. Вторая часть
- •Задания для самостоятельного решения
- •Контрольные вопросы
- •Содержание отчета
- •Лабораторная работа №3. Разработка системы протоколирования операций над данными реляционной таблицы с использованием триггеров
- •Задание для самостоятельного решения:
- •Контрольные вопросы:
- •Содержание отчета
- •Лабораторная работа №2. Разработка пользовательских функций и процедур
- •Задания для самостоятельного решения
- •Контрольные вопросы:
- •Содержание отчета
- •Лабораторная работа №2. Импорт данных
- •Задания для самостоятельного решения
- •Контрольные вопросы:
- •Содержание отчета
- •Курсовая работа
- •Библиографический список
Контрольные вопросы
Какова последовательность и назначение ключевых полей команды SELECT?
Ключевое слово команды SELECT, задающее список источников данных?
Ключевое слово команды SELECT, задающее условия отбора строк?
Ключевое слово команды SELECT, задающее сортировку строк в результирующей таблице?
В каких случаях применяется группировка данных в запросе?
Агрегирующие функции, их влияние на результат запроса?
Содержание отчета
Отчет о лабораторной работе должен включать: цель работы, постановку задачи, перечень всех разработанных SQL запросов.
Лабораторная работа №2. Изучение команды select – запрос из нескольких источников
Цель работы: ознакомиться с программным обеспечением, предназначенным для обращения пользователя к базе данных, приобрести практические навыки по составлению SQL-запросов для получения данных из двух и более источников, применению подзапросов в качестве источников данных и операторов связывания.
В лабораторной работе используется база данных сотрудников фирмы, описанная в предыдущее лабораторной работе.
Задания для самостоятельной работы
Разработать запросы в соответствии с предложенными в табл. 1 вариантами:
Таблица 1
№ варианта |
Номера задач |
||||||||||||
|
|
1 |
4 |
8 |
11 |
14 |
15 |
17 |
18 |
21 |
24 |
27 |
28 |
|
|
|
2 |
5 |
9 |
12 |
13 |
16 |
17 |
19 |
22 |
25 |
27 |
29 |
|
|
|
3 |
6 |
10 |
11 |
14 |
15 |
17 |
20 |
23 |
26 |
27 |
30 |
|
|
|
1 |
7 |
8 |
12 |
13 |
16 |
17 |
18 |
21 |
24 |
27 |
31 |
|
|
|
2 |
4 |
9 |
11 |
14 |
15 |
17 |
19 |
22 |
25 |
27 |
28 |
|
|
|
3 |
5 |
10 |
12 |
13 |
16 |
17 |
20 |
23 |
26 |
27 |
29 |
|
|
|
1 |
6 |
8 |
11 |
14 |
15 |
17 |
18 |
21 |
25 |
27 |
30 |
|
|
|
2 |
7 |
9 |
12 |
13 |
16 |
17 |
19 |
22 |
24 |
27 |
31 |
|
|
|
3 |
4 |
8 |
11 |
14 |
15 |
17 |
20 |
23 |
25 |
27 |
28 |
|
|
|
1 |
5 |
9 |
12 |
13 |
16 |
17 |
18 |
21 |
26 |
27 |
29 |
|
Разработать запрос, результатом которого будет таблица со столбцами...
фамилия, должность.
название проекта, название типа проекта.
имя, фамилия, название отдела.
название отдела, должность, фамилия. Упорядочить по названию отдела, должности, фамилии.
фамилия, должность, название отдела и его расположение. Упорядочить по месту расположения отдела, название отдела и фамилии.
место расположения отдела, фамилия. Упорядочить по месту расположения отдела, фамилии.
название проекта, роль сотрудника в проекте, фамилия сотрудника. Упорядочить по названию проекта, роли сотрудника в проекте, фамилии.
название проекта, дата его начала, фамилия руководителя. В таблицу должны попасть незаконченные проекты.
название отделения и фамилия сотрудников отделений компании в г. ИВАНОВО.
название проекта, роль сотрудника в проекте. В таблицу должны попасть проекты и соответствующие роли сотрудника Петрова.
название должности, количество сотрудников.
название отделения, количество сотрудников.
фамилия, количество завершенных проектов, в которых участвовал сотрудник.
название проекта, количество сотрудников задействованных в проекте.
отделение компании, количество проектов, в которых участвуют сотрудники отделения.
название города, количество проектов, в которых участвуют сотрудники отделения.
название проекта, роль в проекте, количество сотрудников указанной роли в указанном проекте.
название должности. В таблицу должны попасть только неактуальные должности, т.е. должности на которых в данный момент не работает ни один из сотрудников.
название роли в проекте. В таблицу должны попасть только неактуальные роли, т.е. роли которые не использовались ни в одном из проектов.
название отделения. В таблицу должны попасть только неактуальные отделения, т.е. отделения в которых в данный момент отсутствуют сотрудники.
название должности. В таблицу должны попасть только должности, на которых в данный момент состоят не более трех сотрудников.
название роли в проекте. В таблицу должны попасть только роли, которые использовались в проектах не более двух раз.
название отделения. В таблицу должны попасть только отделения, в которых в данный момент работает не более пяти сотрудников.
название должности. В таблицу должны попасть только две наиболее популярные должности. Для решения используйте команду TOP.
название роли в проекте. В таблицу должны попасть только две наиболее популярные роли. Для решения используйте команду TOP.
название отделения. В таблицу должны попасть только два отделения с самым большим числом сотрудников. Для решения используйте команду TOP.
фамилия сотрудника, фамилия непосредственного начальника. В случае если у сотрудника нет непосредственного начальника, вместо его фамилии указывается NULL.
фамилия и ежемесячный доход с учетом надбавки сотрудника с минимальным ежемесячным доходом. Неустановленная надбавка означает отсутствие надбавки.
фамилия и ежемесячный доход с учетом надбавки сотрудника с минимальным ежемесячным доходом. Неустановленная надбавка означает, что надбавка составляет 50% от зарплаты.
фамилия и ежемесячный доход с учетом надбавки сотрудника с максимальным ежемесячным доходом. Неустановленная надбавка означает, что надбавка составляет 50% от зарплаты.
фамилия и ежемесячный доход с учетом надбавки сотрудника с максимальным ежемесячным доходом. Неустановленная надбавка означает отсутствие надбавки.
