- •И.И. Довгялло, с.М. Юдина база данных sql Server 2005. Курсовое проектирование
- •Введение
- •1. Цель и задачи работы над курсовым проектом
- •2. Структура пояснительной записки
- •3. Общие требования к выполнению курсоВого проекта и содержанию пояснительной записки
- •4. Пример задания на курсовое проектирование
- •5. Пример пояснительной записки курсового проекта
- •5.1. Введение
- •5.2. Пример оформления главы 1 « Проектирование базы данных»
- •5.2.1. Проектирование базы данных методом нормализации таблиц
- •5.1.2. Проектирование базы данных методом семантического моделирования в среде Erwin
- •5.3. Пример оформления главы 2 «Создание таблиц в sql Server 2005 »
- •5.3.1. Команды создания и модификации таблиц
- •5.3.2. Построение диаграммы базы данных
- •5.3.3. Просмотр структуры и содержимого таблиц
- •5.4. Пример оформления главы 3 «Основные команды sql для извлечения, добавления и изменения данных»
- •5.5. Пример оформления главы 4. «Создание процедур и функций»
- •5.7. Пример оформления главы 5 «Создание триггеров»
- •5.8. Пример оформления заключения по курсовому проекту
- •6. Нормативные требования к оформлению курсового проекта
- •Вариант 2
- •Вариант 3
- •Вариант 4
- •Вариант 5
- •Вариант 6
- •Вариант 7
- •Вариант 8
- •Вариант 9
- •Вариант 10
- •Вариант 11
- •Вариант 12
- •Вариант 13
- •Вариант 14
- •Вариант 15
- •Вариант 16
- •Вариант 17
- •Вариант 18
- •Вариант 19
- •Вариант 20
- •Вариант 21
- •Вариант 22
- •Вариант 23
- •Вариант 24
- •Вариант 25
- •Вариант 26
Вариант 25
В первой главе курсового проекта описать процесс проектирования базы данных «Учет междугородных разговоров по стационарному телефону». Спроектировать базу данных методом нормализации и методом семантического моделирования. Данные, которые должны храниться в базе, представлены в виде одной таблицы со следующими столбцами:
Номер телефона
Фамилия, имя, отчество абонента
Адрес абонента
Дата разговора
Количество минут
Код города
Название города
Тариф (стоимость одной минуты разговора).
2. Разработать базу данных, таблицы и заполнить их данными. В списке городов не менее 7 записей. В списке абонентов не менее 10 человек. В списке разговоров не менее 40 разговоров. Всего рассмотреть не менее 3 дат, использовать одни и те же даты для всех залов. Задать минимальное значение поля Тариф равным одному рублю. Добавить в таблицу, в которой содержится поле Дата разговора, ограничение для проверки правильности ввода поля: Дата разговора не должна быть ранее текущей даты. Создать для каждой таблицы первичный ключ, а также внешние ключи для всех дочерних таблиц. Установить постоянные отношения между дочерними и родительскими таблицами. Задать ограничение NOT NULL для всех полей, входящих в первичные или внешние ключи.
3. Структуры таблиц и содержимое таблиц привести во второй главе пояснительной записки к курсовому проекту «Создание таблиц в ».
4. В третьей главе курсового проекта «Основные команды SQL для извлечения, добавления и изменения данных» выполнить следующие действия и представить их результаты.
4.1. Показать список разговоров за определенный день. В запросе вывести поля: Номер телефона, Фамилия абонента, Адрес абонента, Дата разговора, Количество минут.
4.2. Показать список разговоров по заданному городу. Вывести поля Номер телефона, Код города, Название города, Дата разговора, Количество минут, Тариф и Стоимость разговора. Стоимость разговора= Количество минут* Тариф.
4.3. Вывести список всех абонентов. Показать Номер телефона, Фамилия абонента, Адрес абонента.. Записи упорядочить в порядке обратном алфавитному.
4.4. Показать список разговоров по заданному городу на заданную дату. Вывести поля Номер телефона, Код города, Название города, Дата разговора, Количество минут, Тариф и Стоимость разговора.
4.5. Показать список разговоров по двум заданным городам. Список поле такой же как и в предыдущем задании.
4.6. Показать список разговоров определенного абонента. В запросе вывести поля: Номер телефона, Фамилия абонента, Адрес абонента, Дата разговора, Количество минут, Название города, Тариф и Стоимость разговора. Стоимость разговора= Количество минут* Тариф.
4.7. Создать сгруппированный запрос для подсчета общего количества минут по каждому номеру телефона. Вывести поля; Номер телефона, Общее количество минут. Отобрать записи, в которых количество минут меньше среднего.
4.8. Увеличить тариф для разговоров с определенным городом на 10%.
4.9. Подсчитать количество звонков за каждый день.
5. В четвертой главе должны быть представлены разработанные процедуры и функции.
5.1. Разработать функцию, которая определяла бы стоимость разговора с определенным городом. Проверить работу функции с помощью запроса.
5.2. Создать процедуру с параметрами «Номер телефона», «Адрес абонента». Процедура должна выполнять проверку, есть ли данный номер телефона в списке телефонных номеров. Если такая запись существует, следует изменить значение поля «Адрес абонента» на соответствующее значение параметра. Если такого телефона в списке нет, то необходимо добавить новую запись.
6. В пятой главе должны быть разработаны и отображены триггеры, обеспечивающие целостность данных в создаваемой базе данных.
6.1. Создать триггер, который при вводе новой записи о разговоре проверял, существует ли данный Номер телефона в списке абонентов. Если такой Номер телефона отсутствует необходимо откатить транзакцию и выдать сообщение.