- •Общие указания к выполнению практических работ
- •Критерии оценки:
- •Практическая работа № 1
- •Указания по выполнению практической работы Возможности монитора MySql
- •Задание 1
- •Описание учебного примера
- •Практическая работа №2
- •Указания по выполнению практической работы Команда alter table
- •Удаление таблиц
- •Задание 1
- •Контрольные вопросы
- •Задание 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
Валюта покупается «Обменным пунктом валюты» в обмен на рубли. Будем считать, что код рубля в таблице «Валюта» равен 1.
Даны следующие таблицы:
Таблица Валюта(Valuta), которая хранит информацию о валютных остатках в обменном пункте, и имеет следующую структуру:
Nval - Номер валюты, первичный ключ,
Nazv - Название валюты,
Ost - текущий остаток валюты в обменном пункте.
Таблица Покупка(Pokupka) хранит информацию о покупке валюты обменным пунктом и имеет следующую структуру:
N_pok - Номер покупки, первичный ключ,
Data_pok - Дата покупки,
N_val - Номер валюты, внешний ключ, ссылающийся
на первичный ключ таблицы Валюта.
Kurs - Курс,
Kol – Количество купленной валюты.
Требуется разработать процедуру «Покупка валюты» обменным пунктом. Входные параметры: Номер валюты, дата покупки, курс покупки, количество покупаемой валюты. Выходной параметр: результат выполнения процедуры, т.е. выполнена или не выполнена процедура.
В теле процедуры выполняются следующие действия:
1. если остаток 1. в рублях недостаточен для выполнения процедуры, то выход из процедуры, при этом выходной параметр сигнализирует о том, что процедура не выполнена;
2. изменяются остатки: остаток в рублях уменьшается, остаток покупаемой валюты увеличивается;
3. операция записывается в таблицу «Покупка валюты».
4. Выходной параметр сигнализирует о том, что процедура успешно выполнена.
Задание 2
Даны таблицы
1. Абоненты (*номер телефона, ФИО, Адрес) - хранит всю информацию об абонентах телефонной сети. Поле «Номер телефона» – первичный ключ.
2. Тариф (код города, Название города, цена за минуту) – хранит информацию о тарифах, где поле «код города» – первичный ключ.
3. Разговоры(*номер разговора, номер телефона, дата, код города, время) – хранит информацию о разговорах абонентов, где поле «номер разговора» - первичный ключ, а поле «номер телефона» - внешний ключ, который ссылается на первичный ключ таблицы «Абоненты», поле «код города» - внешний ключ, который ссылается на первичный ключ таблицы Тариф.
Разработать процедуру или функцию, которая по каждому абоненту (номеру телефона) выдает информацию о разговорах этого абонента за период времени с даты 1 по дату 2, например, в следующем виде: Код города, Название города, Дата, Время, Цена за мин, Сумма.
Контрольные вопросы
В чем преимущество использования хранимых подпрограмм?
Чем хранимая процедура отличается от хранимой функции?
В чем отличие IN, OUT и INOUT параметров подпрограмм?
Какие параметры IN, OUT или INOUT можно использовать в функциях?
Какие операторы языка SQL можно использовать в теле подпрограмм?
Можно ли в теле подпрограмм использовать ветвления, циклические конструкции?
Как подпрограмму записать в базу данных? Для чего используется оператор DELIMITER?
Как вызывается процедура? Как вызывается функция?
Можно ли в теле подпрограмм использовать переменные?
Требуют ли они предварительного описания? Если да, то как это сделать?
Как переменной назначить значение?
Для чего используется оператор CASE в теле подпрограммы?
Для чего используются операторы LEAVE и ITERATE в теле подпрограммы?
Как просмотреть созданные процедуры и функции?
Что такое курсор, для чего он используется? Порядок работы с курсором.
Приведите пример хранимой процедуры, функции.
