- •Общие указания к выполнению практических работ
- •Критерии оценки:
- •Практическая работа № 1
- •Указания по выполнению практической работы Возможности монитора MySql
- •Задание 1
- •Описание учебного примера
- •Удаление таблиц
- •Задание 1
- •Контрольные вопросы
- •Практическая работа №2
- •Указания по выполнению практической работы Команда alter table
- •Задание 1
- •Задание 2
- •Контрольные вопросы
- •Практическая работа № 3
- •Указания по выполнению практической работы
- •Задание 1
- •Задание 1
- •Задание 2
- •1. Создание eer-диаграммы
- •Контрольные вопросы
- •Лабораторная работа № 7
- •Указания по выполнению лабораторной работы
- •Для компонента adoConnection1 устанавливаем следующие свойства
- •Простая выборка
- •Использование вычисляемых полей
- •Логические связки and и or
- •Выборка с упорядочением
- •Контрольные вопросы
- •Практическая работа № 11
- •Указания к выполнению лабораторной работы Запросы к нескольким таблицам
- •Задание1
- •Табличный подзапрос
- •Использование операций in и not in
- •Использование операций some, any и all
- •Использование exists и not exists
- •Задание
- •Контрольные вопросы
- •Лабораторная работа № 14
- •Команда insert
- •Задание 1
- •Команда update
- •Задание 2
- •Команда delete
- •Задание 3
- •Контрольные вопросы
- •Лабораторная работа № 15
- •Задание
- •Задание 2
- •Контрольные вопросы
- •Лабораторная работа № 16
- •Контрольные вопросы
- •Практическая работа № 17
- •Задание 1
- •Задание 2
- •Контрольные вопросы
- •Практическая работа № 18
- •Добавление триггера
- •Создание триггера на before update
- •Удаление триггера
- •Список созданных триггеров
- •Задание 1
- •Задание 2
- •Задание 3
- •Задание 4
- •Контрольные вопросы
- •Лабораторная работа № 19
- •Задание 1
- •Задание 2
- •Контрольные вопросы
- •Практическая работа № 20
- •Задание 1
- •Контрольные вопросы
- •Практическая работа № 21
- •Уровни привилегий и пользователи
- •Отмена привилегий и удаление пользователей
- •Задание 1 Работа локально
- •Варианты заданий предметных областей для создания баз данных Вариант 1
- •Вариант 2
- •Вариант 3
- •Вариант 4
- •Вариант 5
- •Вариант 6
- •Вариант 7
- •Вариант 8
- •Вариант 9
- •Вариант 10
- •Вариант 11
- •Вариант 12
- •Вариант 13
- •Вариант 14
- •Вариант 15
- •Вариант16
- •Вариант 17
- •Вариант 18
- •Вариант 19
- •Вариант 20
- •Вариант 22
- •Вариант 23
- •Вариант 24
- •Вариант 25
- •Вариант 26
- •Вариант 27
- •Вариант 28
- •Вариант 29
- •Вариант 30
- •Вариант 31
- •Вариант 32
Задание1
Используя таблицы, введенные ранее выбрать фамилии и телефоны должников библиотеки. Должником считается читатель, который не сдал книгу во время, при этом книги выдаются на 15 дней.
Используя таблицы, введенные ранее выбрать ФИО и телефоны читателей, у которых в данный момент находится книга Дюма А. «Граф Монте-Кристо».
Используя таблицы, введенные ранее выбрать информацию обо всех книгах, которые когда-либо брал читатель с номером билета 101. То есть необходимо получить читательскую карточку этого читателя. Результат должен содержать следующие поля: Номер читателя, ФИО читателя, Телефон читателя, Название книги, Автор, Дата выдачи, Признак возврата.
Задание 2
Создайте запросы с внутренним и внешним соединением таблиц для своего варианта базы данных.
Контрольные вопросы
Что такое внешнее соединение?
Что такое внутреннее соединение?
Как работают внутренние и внешние соединения таблиц?
Чем левое соединение отличается от правого?
Практическая работа №12
Тема: «Создание запросов на объединение таблиц».
Цель работы: Научиться писать запросы на объединение таблиц.
Время выполнения: подготовка: 5 мин; выполнение: 75 мин; проверка: 10 мин; всего: 90 мин.
Указания к выполнению лабораторной работы
Объединение таблиц(UNION). Для выполнения этой операции необходимо, чтобы таблицы имели идентичные схемы, т.е. имели одинаковое количество столбцов, и соответствующие столбцы должны быть определены на одних и тех те типах данных. Операция объединения таблиц позволяет исключить строки дубликаты.
Например, даны две таблицы:
Student1(*Nom1, FIO1) и Student2(*Nom2, FIO2).
Атрибуты Nom1 и Nom2 должны иметь одинаковые типы данных, FIO1 и FIO2 также должны иметь одинаковые типы данных. Тогда результат объединения отношений будет содержать строки, которые входят хотя бы в одно из отношений операндов.
Следующий оператор реализует эту операцию:
SELECT * FROM Student1 UNION SELECT * FROM Student2;
Пример применения этой операции к таблицам Student1 и Student2 приведен на рис. 1.
Рис. 1 Результат работы операторов SELECT
Контрольные вопросы
Как объединить несколько таблиц с одинаковой структурой?
Что позволяет исключить объединение таблиц?
Практическая работа №13
Тема: «Создание сложных запросов на выборку с использованием вложенных запросов».
Цель работы: Научиться писать запросы на объединение таблиц.
Время выполнения: подготовка: 5 мин; выполнение: 210 мин; проверка: 10 мин; всего: 225 мин.
Указания по выполнению практической работы
Вложенные запросы
SELECT-предложение может содержать подзапрос. Такие подзапросы называют вложенными. Подзапрос может содержаться в условии во фразах WHERE и HAVING. Подзапросы бывают скалярные и табличные. Скалярный подзапрос возвращает одно значение. Табличный подзапрос может возвращать несколько строк, т.е. таблицу.
Скалярный подзапрос
Рассмотрим первый случай, когда подзапрос возвращает одно значение. В этом случае условие во фразе WHERE может иметь следующий вид:
<ИмяАтрибута> <Операция> <Подзапрос>
Где:
Операция это { =, >, <, >=, <=, < >}
Подзапрос это вложенный запрос.
Например, вывести фамилии сотрудников, у которых самая большая зарплата:
SELECT ФИО FROM Сотрудники
WHERE Зарплата = (SELECT max(Зарплата) FROM Сотрудники);
Вложенный запрос возвращает ровно одно значение, поэтому правомерно применение операции равно (=).
