Учебно-методический комплекс по дисциплине «Базы данных» для студентов специальности «прикладная информатика (в управлении)

Вид материалаУчебно-методический комплекс
Подобный материал:
1   2   3   4   5   6   7   8   9

3.3MS SQL Server - особенности использования

Краткая теория занятия

  1. Формирование БД учебного задания в СУБД SQL Server
  1. Реализация представлений в SQL Server

3.4Языки БД

Краткая теория занятия

  1. Простые запросы SELECT
  1. Обобщающие функции
  2. Подзапросы и соединения
  3. Группирование

Задание на практическое занятие


Исходные данные

Представленные в таблице 3.3 описания таблиц являются частью базы данных, созданной в среде некоторой реляционной СУБД.

Таблица 3.3 – Исходная конфигурация таблиц задания

Таблица

Названия столбцов

Hotel

Hotel No, Name, Address

Room

Room No, Hotel No, Type, Price

Booking

Hotel_No, Guest_No, Date_From, Date To, Room_No

Guest

Guest No, Name, Address

Таблица Hotel содержит сведения об отелях. Ее первичным ключом является столбец Hotel_No.

Таблица Room содержит сведения о гостиничных номерах каждого из отелей. Ее первичный ключ состоит из столбцов Hotel No и Room No.

Таблица Booking содержит сведения о регистрации постояльцев гостиниц. Ее первичный ключ состоит из столбцов Hotel _No,Guest _No и Date _From.Таблица Guest содержит сведения о постояльцах. Ее первичным ключом является столбец Guest No.

Требования по заданию
  1. Нормализация БД. Проверьте, удовлетворяет ли представленная БД условиям целостности данных. При необходимости измените ключевые поля для реализации условий ссылочной целостности данных. Разработайте нормализованную модель данных
  2. Создайте БД в MS SQL Server
  3. Простые запросы
  • Выберите из базы сведения обо всех отелях.
  • Выберите из базы сведения обо всех отелях, расположенных в Лондоне.
  • Составьте перечень имен и адресов всех постояльцев, зарегистрированных в отелях Лондона, упорядочив информацию по именам постояльцев в алфавитном порядке.
  • Составьте список всех двухкомнатных или семейных номеров отелей с ценой менее 40,00 фунтов стерлингов в сутки, упорядочив данные в порядке увеличения стоимости номера.
  • Выберите все записи регистрации постояльцев, в которых не было заполнено поле date to.
  1. Обобщающие функции
  • Сколько отелей принадлежит компании?
  • Какова средняя стоимость номера?
  • Чему равен общий суточный доход от всех двухкомнатных номеров?
  • Сколько различных постояльцев было зарегистрировано на протяжении августа месяца?
  1. Подзапросы и соединения
  • Составьте отчет с указанием цены и типа всех номеров отеля Grosvenor Hotel.
  • Перечислите всех постояльцев, в настоящее время снимающих номера в отеле Grosvenor Hotel.
  • Составьте отчет, содержащий полные сведения обо всех номерах отеля Grosvenor Hotel, с указанием имен постояльцев всех номеров.
  • Чему равен общий доход от постояльцев, зарегистрированных в отеле Grosvenor Hotel, за сегодняшний день?
  • Составьте список номеров отеля Grosvenor Hotel, которые в данный момент свободны.
  • Каковы общие потери от наличия в отеле Grosvenor Hotel свободных номеров?
  1. Группирование
  • Определите количество номеров в каждом из отелей.
  • Определите количество номеров в каждом из отелей, расположенных в Лондоне.
  • Каково среднее количество постояльцев, зарегистрированных в каждом из отелей в августе месяце?
  • Какой тип номеров чаще всего снимается в каждом из отелей Лондона?
  • Какова сумма потерь от наличия свободных номеров в каждом из отелей за сегодняшний день?
  1. Создание и заполнение таблиц
  • С помощью оператора CREATE TABLE создайте таблицы Hotel, Room. Booking и Guest.
  • Введите в каждую из таблиц несколько записей.
  • Увеличьте стоимость каждого номера на 5%.
  • Создайте отдельную таблицу с той же самой структурой, что и таблица Booking, предназначенная для хранения архивных записей. С помощью оператора INSERT скопируйте в новую таблицу все записи таблицы Booking, созданные до 1 января 1999 года. Удалите все записи таблицы Booking, созданные до 1 января 1999 года

3.5Управление транзакциями

Краткая теория занятия

  1. Реализация хранимой процедуры на основе запроса, реализованного в представлениях
  1. Реализация хранимых процедур для создания и заполнения таблиц
  2. Подключение хранимых процедур к проекту C# в Visual Studio
  3. Реализация транзакции для формирования архива записей БД

Задание на практическое занятие


Разработать хранимые процедуры для заданий п. 3.4.