Проектирование и создание многопользовательских баз данных

Особенности распределенной обработки данных в информационных системах. Теоретическое обоснование и систематизация содержания обучения методам и программным средствам разработки многопользовательских БД. Лабораторный практикум по MS SQL Server 7.0.

Рубрика Программирование, компьютеры и кибернетика
Вид диссертация
Язык русский
Дата добавления 29.12.2008
Размер файла 2,1 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

2) Сформулированы требования к содержанию и организации обучения проектированию и созданию многопользовательских баз данных, базирующиеся на принципах знаково-контекстного обучения в вузе.

3) Выполнен отбор учебного материала, обеспечивающий эффективное усвоение основных концепций, методов проектирования баз данных и способов разработки программного обеспечения для создания корпоративных систем обработки данных.

4) Разработан лабораторный практикум, способствующий освоению теоретических основ, методов и программных средств разработки многопользовательских БД.

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

1 Андреева Е.В. Примерное содержание компьютерного учебника по информатике //Информатика. Еженедельная газета Объединения педагогических изданий «Первое сентября», - №35, 2001

2 Базы данных: модели, разработка, реализация / Т.С. Карпова. - СПб.: Питер, 2001

3 Бочкин А.И. Методика преподавания информатики: Учеб. Пособие. - Мн.: Выш. шк., 1998

4 Вербицкий А.А. Активное обучение в высшей школе: контекстный подход. - М.: Высшая школа, 1991

5 Гарбус Дж., Паскузи Д., Чанг Э. Database design on SQL Server 7. Сертификационный экзамен - экстерном (экзамен 70-029) - СПб: Издательство “Питер», 2000

6 Герасимова Г.Е. Лабораторные практикумы на уроках информатики //ИНФО, - №9, - 2000

7 Глушаков С.В., Ломотько Д.В. Базы данных: Учебный курс / Харьков: Фолио; Ростов н/Д; Феникс; Киев: Абрис, 2000

8 Жарова Л.В. Учить самостоятельности: Книга для учителя: Пособие для Студ. Пед. Инст. И учит. - М.: Просвещение,1993

9 Журавлёв И.К., Зорина Л.Я. Дидактическая модель учебного предмета // Новые исследования в педагогических науках. М. - 1979

10 Конноли, Томас, Бегг, Каролин, Страчан, Анна. Базы данных: проектирование, реализация и сопровождение. Теория и практика, 2-е изд.: Пер. с англ.: Уч. пос. - М.: Издательский дом «Вильямс», 2000

11 Лапчик и др. Методика преподавания информатики: Учеб. Пособие для студ. Пед. Вузов. - М.: Издательский центр «Академия», 2001

12 Леонтьев А.Н. Проблемы развития психики. - М.: Изд. МГУ, 1981

13 Мамаев Е., Вишневский А. Microsoft SQL Server 7.0 для профессионалов. СПб.: Питер, 2001

14 Матюшкин А.М. Проблемные ситуации в мышлении и обучении. - М.: Педагогика, 1972

15 Михаэль Эбнер. Delphi 5. Руководство разработчика: Пер. с нем. - К.: Издательская группа BHV, 2000

16 Оконь В. Введение в общую дидактику. - М.: Высш. шк., 1990

17 Основы педагогики и психологии высшей школы: Учеб. Пособие / В.П. Петровский, В.М. Ковалёва, А.а. Крашенников. -М.: Изд. МГУ, 1986

18 Острейковский В.А. Информатика: Учебник для вузов. - М.: Высш. Шк., 2000

19 Педагогика /Ю.К. Бабанский, В.А. Сластенин, Н.А. Сорокин; Под ред. Ю.К. Бабанского - М.: Просвещение, 1988

20 Подласый И.П.. Педагогика: 100 вопросов - 100 ответов: Учеб. Пособие для студ. Высш. Учеб. Заведений. М.:ВЛАДОС-ПРЕСС, 2001.

21 Психологические аспекты проблемного обучения / Л.В. Путляева, 1983

22 РД РБ 02100.5.044 - 98 Образовательный стандарт Высшее образование Специальность H.08.01.00 Прикладная математика

23 Реализация баз данных Microsoft SQL Server 7.0. Учебный курс: официальное пособие Microsoft для самостоятельной подготовки/ Пер. с англ. - М.: Издательско-торговый дом «Русская Редакция», 2000

24 Свириденко С.С Современные информационные технологии. - М.: Радио и связь, 1989

25 Талызина Н.Ф. Методика составления обучающих программ. - М..: Изд. МГУ. - 1980

26 Теоретические основы содержания общего среднего образования/ Под ред. В.В. Краевского, И.Я. Лернера. - М.: Педагогика, 1983

27 Фрейман В.Э. Методика обучения школьников использованию баз данных при изучении основ информатики: Дис..к-та пед наук: 13.00.02 - М., 1990.

28 Хомоненко А.Д., Цыганков В.М., Мальцев М.Г. Базы данных: Учебник для высших учебных заведений / Под редакцией проф. А.Д. Хомоненко. - СПб.: КОРОНА принт, 2000

ПРИЛОЖЕНИЯ

ПРИЛОЖЕНИЕ 1

Варианты индивидуальных заданий на проектирование и разработку БД

Разработка базы данных включает следующие этапы:

Проектирование БД: разработку инфологической модели (выделения сущностей и связей между ними), преобразование инфологической модели в реляционную модель; определение возможных пользователей и решаемых ими задач.

Создание БД, создание таблиц с определением ограничений целостности данных, занесение данных в таблицы.

Создание запросов, представлений, триггеров, хранимых процедур в соответствии вариантом задания.

Описание предметной области и примерный состав атрибутов каждого варианта:

Вариант 1

БД ”Отель”

Описание предметной области:

В БД хранятся сведения об отелях, принадлежащих одной компании. Отели находятся в разных городах. Цены на номера одного типа во всех отелях одинаковы. При заезде в отель постояльцы проходят регистрацию. Информация о регистрации постояльцев отеля (выехавших из отеля) хранится в течение года и 1 января удаляется в архив.

БД должна содержать следующие сведения:

Адрес отеля.

Название отеля.

Номер комнаты.

Тип комнаты.

Признак занятости (забронированности) номера.

Цена за сутки проживания.

Имя и постояльца.

Фамилия постояльца.

Отчество постояльца.

Адрес постоянного проживания.

Дата прибытия.

Дата убытия.

Задания

1. Создайте таблицы, используя необходимые средства поддержки целостности данных для реализации следующих требований:

В поле Тип комнаты должно помещаться одно из следующих значений “однокомнатный”, “двухкомнатный” или “семейный”.

значение в поле Цена должно находиться в диапазоне от 10 т.р. до 40 т.р.

Значение в поле Номер комнаты должно находиться в пределах от 10 до 100.

Значения, помещаемые в поля “Дата прибытия” и “Дата убытия” должны быть по умолчанию равны текущей дате.

2. Создайте запросы:

Составить список всех 2-комнатных номеров отелей, с ценой менее 20 т.р., упорядочив данные в порядке уменьшения стоимости.

Выбрать все записи регистрации постояльцев, которые выехали из отелей в течение двух последних недель.

Найти среднюю стоимость номера в каждом из отелей компании.

Чему равен общий суточный доход от всех номеров каждого типа?

Составить список свободных номеров одного из отелей.

Найти общие потери от наличия в этом отеле свободных номеров за текущий день.

Определить количество номеров в каждом из отелей.

Каково среднее количество постояльцев, зарегистрированных в каждом из отелей в январе?

Создать таблицу со структурой аналогичной структуре таблицы регистрации для хранения архивных записей. Скопируйте в нее все записи, созданные до 1 января 2003 года. Удалите из основной таблицы регистрации все записи, занесенные в архив.

3. Создайте представления:

Для турагентов (поиск свободных номеров в отелях).

Для владельца компании (информация о доходах).

4. Создайте хранимые процедуры:

для увеличения цены всех номеров на 5 %, если в гостинице нет свободных номеров.

для получения информации о свободных одноместных номерах гостиницы. Если таких номеров нет, то выдать соответствующее сообщение.

бронирования двухместного номера в гостинице.

5. Создайте необходимые триггеры.

Вариант 2

БД “Сессия”

Описание предметной области:

БД содержит сведения о сдаче сессии студентами математического факультета. Номер зачетной книжки однозначно идентифицирует студента. Количество групп на одном курсе не может быть более 5. Каждый преподаватель может вести любую из дисциплин, относящихся к его кафедре.

БД должна содержать следующие сведения:

Номер зачетной книжки.

Фамилия студента.

Имя студента.

Отчество студента.

Курс.

Группа.

Отметка о допуске.

Код дисциплины.

Название дисциплины.

Оценка.

Фамилия преподавателя.

Имя преподавателя.

Отчество преподавателя.

Кафедра.

Дата сдачи экзамена.

Аудитория.

Задания

1. Создайте таблицы, используя необходимые средства поддержки целостности данных для реализации следующих требований:

В поле “Отметка о допуске ” по умолчанию должно помещаться значение “допущен”.

Значение в поле Курс должно находиться в диапазоне от 1 до 5.

Значение в поле Оценка должно находиться в пределах от 2 до 5.

2. Создайте запросы:

Вывести список студентов, не допущенных к сессии.

Составить список дисциплин, которые должны быть сданы каждой группой с указанием дат сдачи и фамилий преподавателей.

Вывести список студентов, получивших более двух двоек.

Вывести список студентов, получивших двойки с указанием фамилии преподавателя, которым они должны пересдать экзамен.

Вычислить средний балл каждого студента.

Создать рейтинговый список групп по результатам сдачи сессии, упорядочить его по убыванию.

Создайте списки студентов, упорядоченные по группам и фамилиям студентов, содержащие данные о средних баллах и размерах стипендии. Формулу для вычисления стипендии (стипендия зависит от среднего балла) задайте самостоятельно.

Вывести список студентов, получивших несколько двоек.

Вывести список студентов, сдавших все положенные экзамены.

Составить список на отчисление (отчисляются студенты, имеющие две и более задолженности).

Составьте запрос для назначения повышенной стипендии студентам, сдавшим все экзамены на отлично.

3. Создайте представление для учебного отдела, содержащее данные о результатах сдачи сессии.

4. Создайте хранимые процедуры:

Для повышения стипендии отличникам на 10%.

Для перевода студентов на следующий курс.

Для отчисления студента, получившего более одной двойки в сессию.

Для изменения оценки при успешной пересдаче экзамена.

5. Создайте триггер для запрета удаления записей из таблицы, содержащей данные об оценках при исключении студентов.

Вариант 3

БД “Библиотека”

Описание предметной области:

1. Каждая книга может храниться в нескольких экземплярах.

2. Для каждого экземпляра известно место его хранения (комната, стеллаж, полка).

3. Читателю не может быть выдано более 3-х книг одновременно.

4. Книги выдаются читателям на срок не более 10 дней.

БД должна содержать следующие сведения:

Автор (фамилия и имя (инициалы) или псевдоним автора издания).

Название (заглавие) издания.

Номер тома (части, книги, выпуска).

Составитель (фамилия и имена (инициалы) каждого из составителей издания).

Язык, с которого выполнен перевод издания.

Вид издания (сборник, справочник, монография, ...).

Область знания.

Переводчик (фамилия и инициалы переводчика).

Место издания (город).

Издательство (название издательства).

Год выпуска издания.

Библиотечный шифр (например, ББК 32.973).

Количество книг.

Номер (инвентарный номер) экземпляра.

Номер комнаты (помещения для хранения экземпляров).

Номер стеллажа в комнате.

Номер полки на стеллаже.

Цена конкретного экземпляра.

Дата изъятия экземпляра с установленного места.

Номер читательского билета (формуляра).

Фамилия читателя.

Имя читателя.

Отчество читателя.

Адрес читателя.

Телефон читателя.

Задания

1.Создайте таблицы, используя необходимые средства поддержки целостности данных для реализации следующих требований:

В библиотеке хранятся книги, выпущенные не позднее 1960 года.

В библиотеке имеется 10 комнат для хранения книг, в каждой комнате 30 стеллажей, каждый стеллаж состоит из 50 полок.

Дата изъятия экземпляра по умолчанию равна текущей дате.

Возраст читателей должен быть не меньше 16 лет.

2.Создайте запросы:

Вывести список читателей, не вернувших книги в назначенный срок.

Вывести список читателей, имеющих на руках книги, переведенные с английского языка, изданные позднее 2000 года.

Вывести список читателей , не вернувших в срок книги и имеющих на руках более трех книг.

Вывести список книг, которые находятся в библиотеке в единственном экземпляре.

Подсчитать количество читателей, которые не обращались в библиотеку в течение года.

Исключить из библиотеки читателей, которые не обращались в библиотеку в течение года.

Вывести список книг по программированию, экземпляры которых имеются в библиотеке.

Вывести список книг по программированию, экземпляры которых отсутствуют в библиотеке, но которые должны быть возвращены не позднее, чем через 3 дня.

Вывести список книг, экземпляры которых отсутствуют в библиотеке.

3. Создать представления для администрации библиотеки, содержащие:

сведения о должниках.

сведения о наиболее популярных книгах (все экземпляры находятся на руках у читателей).

4. Создать хранимые процедуры:

Для проверки наличия экземпляров заданной книги в библиотеке (процедура должна возвращать количество экземпляров книги).

Для ввода в базу данных новой книги.

Для ввода нового читателя (необходимо проверить наличие читателя в картотеке, чтобы не назначить ему номер вторично. Проверить, не числятся ли за ним книги)

5.Создать триггер, предназначенный для удаления книги из каталога в случае, когда все экземпляры книги утеряны.

Вариант 4

БД ”Учет выполнения заданий”

Описание предметной области:

Сотрудники организации выполняют проекты. Проекты состоят из нескольких заданий. Каждый сотрудник может участвовать в одном или нескольких проектах, или временно не участвовать ни в каких проектах.

Над каждым проектом может работать несколько сотрудников нескольких организаций и отделов, или временно проект может быть приостановлен, тогда над ним не работает ни один сотрудник. Над каждым заданием в проекте работает ровно один сотрудник. Каждый сотрудник числится в одном отделе.

БД должна содержать следующие сведения:

Номер сотрудника.

Фамилия сотрудника.

Имя сотрудника.

Отчество сотрудника.

Оклад сотрудника.

Название организации.

Номер организации.

Адрес организации.

Номер телефона отдела.

Номер отдела.

Название отдела.

Код проекта.

Название проекта.

Номер задания.

Дата начала выполнения задания.

Срок выполнения задания.

Отметка о выполнении задания.

Дата контроля выполнения задания.

Причина невыполнения задания.

Задания

1. Создайте таблицы, используя необходимые средства поддержки целостности данных для реализации следующих требований:

Оклад сотрудника должен находиться в пределах от 200$ до 500$.

Срок выполнения задания не должен превышать 30 дней.

Дата начала выполнения задания и дата контроля выполнения задания по умолчанию равны текущей дате.

Поле причина невыполнения задания может содержать 2 значения, имеющих следующий смысл: “уважительная”, ”неуважительная”.

2. Создайте запросы:

Составить список всех заданий каждого проекта с указанием организаций, отделов и исполнителей, занятых в его выполнении.

Составить список проектов, работа над которыми была начата больше месяца назад.

Вычислить средний оклад сотрудника каждого отдела.

Подсчитать количество проектов, выполняемых каждым отделом.

Составить список сотрудников, проектов, заданий в выполнении которых они участвуют и дат предполагаемого выполнения ими заданий.

Составить список сотрудников, не выполнивших задание в срок по неуважительной причине.

Составить список сотрудников, не выполнивших задания в срок с указанием проектов и заданий, которые они должны были выполнить и количества дней просрочки выполнения заданий.

Составить список сотрудников, участвующих в выполнении более, чем одного проекта.

Составить список проектов, в выполнении которого участвует более трех человек.

Составить список проектов, срок выполнения которых истекает сегодня, и которые включают больше трех невыполненных заданий.

Составить список отделов, сотрудники которых не выполнили задания в срок.

3.Создать представление для руководителей проектов, содержащее сведения об исполнителях, отделах, сроках выполнения заданий, включенных в проект.

4.Создать хранимые процедуры:

Для повышения зарплаты сотрудников, выполнивших задания с трехдневным опережением графика.

Для печати предупреждения сотруднику, не сдавшему задание в срок по неуважительной причине.

Для поиска номера телефона сотрудника (телефон установлен в каждом отделе).

5. Создать триггер для запрета удаления данных о сотруднике в случае, если он не завершил выполнение всех своих заданий.

Вариант 5

БД ”Издательство компьютерной литературы”

Описание предметной области:

Издательство занимается выпуском литературы по различным областям информатики. Покупатели книг приобретают книги на базе издательства. Когда на базе заканчиваются книги, издается дополнительный тираж.

БД должна содержать следующие сведения:

Фамилия автора.

Имя автора.

Отчество автора.

Код автора.

E-mail автора.

Код ISBN.

Название книги.

Код категории книги.

Категория книги.

Количество страниц.

Год начала издания.

Розничная цена книги.

Тираж.

Количество экземпляров на базе издательства.

Код заказчика.

Фамилия заказчика.

Имя заказчика.

Отчество заказчика.

Адрес заказчика.

Телефон заказчика.

Код заказа.

Количество экземпляров книги в заказе.

Задания

1. Создайте таблицы, используя необходимые средства поддержки целостности данных для реализации следующих требований:

Количество страниц книги находится в интервале от 50 до 2000.

Год начала издания по умолчанию равен текущему году.

Розничная цена книги находится в диапазоне от 500 до 40000 рублей.

Тираж не превышает 10000 штук.

2. Создать запросы:

Список книг, изданных в текущем году и относящихся к категории ”Базы данных”.

Список покупателей, заказавших книг на сумму более 100 тыс рублей.

Список книг, которые не заказывались в течение последних двух кварталов.

Список авторов, не написавших ни одной книги, относящейся к категории “Базы данных “.

Список книг, в названиях которых содержится слово “проектирование“ и которые присутствуют на базе в количестве, превышающем 50 экземпляров.

Список всех книг, которые дороже любой книги по категории “Базы данных”.

Покупателя, сделавшего заказ на максимальную сумму.

Список книг, не попавших ни в один из заказов.

Увеличить на 1 % стоимость книг, если число проданных экземпляров превышает 100 штук.

3. Создать представление, содержащее сведения о количестве заказанных экземпляров каждой книги, изданной в текущем году.

4. Создать хранимые процедуры:

Для снижения цен на книги, которые находятся на базе в количестве превышающем 1000 штук.

Для ввода новой книги.

Для оформления заказа.

Для поиска книг заданного автора.

5. Создать триггеры для проверки наличия связанных записей в главной таблице при вводе данных в подчиненные таблицы.

Вариант 6

БД ”Пассажир”

Описание предметной области:

Информационная система служит для продажи железнодорожных билетов. Билеты могут продаваться на текущие сутки или предварительно. Цена билета при предварительной продаже снижается на 5 %.

БД должна содержать следующие сведения:

Номер поезда.

Название поезда.

Тип поезда.

Пункт назначения.

Расстояние до конечного пункта.

Пункт назначения для проданного билета.

Тип вагона.

Количество мест в вагоне.

Цена билета.

Дата отправления.

Время отправления.

Номер вагона.

Место.

Фамилия пассажира.

Задания

1. Создайте таблицы, используя необходимые средства поддержки целостности данных для реализации следующих требований:

Дата отправления по умолчанию равна текущей дате.

Билет может быть продан предварительно не позднее, чем за 45 суток.

Количество вагонов в поезде не может быть меньше 3 и больше 30.

Задайте ограничения на типы вагонов и типы поездов.

2. Создать запросы:

Свободные места на все поезда, отправляющиеся с вокзала в течение текущих суток.

Список пассажиров, отправившихся из Витебска в Москву всеми рейсами за прошедшие сутки.

Количество билетов, проданных до промежуточных пунктов за прошедший день.

Свободные места в купейные вагоны всех рейсов до Москвы на текущие сутки.

Выручка от продажи билетов на все поезда за прошедшие сутки.

Общее количество билетов, проданных по всем направления в вагоны типа “СВ”.

Количество непроданных билетов на все поезда, формирующиеся в Витебске, за прошедшие сутки.

Номера и названия поездов, формирующихся в Витебске все вагоны которых были заполнены менее, чем наполовину за прошедшие сутки.

Список скорых поездов, на которые были проданы билеты за текущие сутки, имеющих вагоны СВ.

6. Создать представление, содержащее сведения для пассажиров о наличии свободных мест.

7. Создать хранимые процедуры:

Для повышения цен в пригородные поезда на 20%.

Для продажи билета.

Для печати сообщения об отсутствии билета на заданный рейс.

5. Создать триггеры для удаления связанных записей в подчиненной таблице при удалении записей в главной таблице.

Вариант 7

БД ”Курсы”

Описание предметной области:

Подразделение занимается организацией внебюджетного образования. Имеется несколько типов краткосрочных курсов, предназначенных для определенных специальностей, связанных с программным обеспечением персональных компьютеров. Каждый тип курсов имеет определенную длительность и свой перечень изучаемых дисциплин. На каждую специальность может быть набрано несколько групп. По каждой дисциплине могут проводиться лекционные и лабораторные занятия. Подразделение обеспечивает следующие ресурсы: учебные классов, лекционные аудитории и преподавателей. Необходимо составить расписание занятий.

БД должна содержать следующие сведения:

Фамилия слушателя;

Имя слушателя;

Специальность.

Номер группы.

Количество человек в группе.

Название дисциплины.

Количество часов.

День недели.

Номер пары.

Номер аудитории.

Вид занятий (лекционные или практические).

Фамилия преподавателя.

Задания

1. Создайте таблицы, используя необходимые средства поддержки целостности данных для реализации следующих требований:

Количество пар в день не может быть больше 3.

Количество часов, отводимых на изучение дисциплины, находится в диапазоне от 10 до 100.

Количество групп по одной специальности не может быть больше 4.

2. Создать запросы:

Вывести все номера группы и специальности, где количество слушателей меньше 10.

Вывести перечень изучаемых дисциплин по тем специальностям, где количество слушателей меньше 10.

Вывести список преподавателей, которые не проводят занятия на третьей паре ни в один из дней недели.

вывести список свободных лекционных аудиторий на понедельник.

Вычислить общее количество учебных часов по каждой специальности.

3. Создать представление для потенциальных слушателей, содержащее перечень специальностей, изучаемых на них дисциплин и количество часов.

4.Создать хранимые процедуры:

a) Получить расписание занятий для группы на определенный день недели.

b) Осуществить процедуру записи на курс слушателя, если в группе по данному курсу уже набрано больше 15 человек, то выдать сообщение об отказе в приеме.

c) Выполнить процедуру увольнения преподавателя, при этом в расписании заменить его другим.

d) Получить перечень свободных лекционных аудиторий (с указанием времени) на любой день недели. Если свободных аудиторий не имеется, то выдать соответствующее сообщение.

5. Создать триггер для вставки данных о новой специальности.

Вариант 8

БД ”Поликлиника”

Описание предметной области:

В поликлинике работают врачи высшей, первой, и второй категорий. Больной может обращаться к врачу

БД должна содержать следующие сведения:

ФИО пациента.

Возраст.

Дата посещения.

Код диагноза.

Диагноз.

Дата открытия больничного листа.

Дата закрытия больничного листа.

Номер талона.

Номер посещения.

Код врача.

Имя врача.

Отчество врача.

Специальность врача.

Категория врача.

Кабинет, в котором врач ведет прием.

Стоимость приема.

Задания

1. Создайте таблицы, используя необходимые средства поддержки целостности данных для реализации следующих требований:

a) Врач принимает не более шести больных в день, по одному больному в час

b) Талоны выдаются за день до приема на весь следующий день.

c)Врач может относиться к одной из трех категорий.

Стоимость приема зависит от категории врача.

2. Создать запросы:

a) Вывести список всех имеющихся в поликлинике специальностей врачей.

Вывести список кардиологов высшей категории, к которым имеются талоны.

Вывести список больных с открытым больничным листом, которые приходили на прием более 2 раз.

Определить, среднее число дней, на которое выдавался больничный лист больным гриппом.

Вывести список кабинетов, в которые не выдано ни одного талона.

3. Создать представление для больных, содержащее список специалистов и имеющихся к ним талонам.

4.Создать хранимые процедуры:

a) Переименовать один из процедурных кабинетов. Данный процесс сопроводить сообщением о том, какое название было изменено и на какое.

b) Удалить кабинет, при этом назначить врачам, принимающим в этом кабинете, другой кабинет.

c) Обеспечить запись пациента на процедуры. Если на указанную дату и время нет свободных мест, то записать в свободное время на этот же день или на следующий день.

5.Создать триггер для удаления связанных записей в подчиненной таблице при удалении записей из главной таблицы.

Вариант 9

БД «Торговая компания»

Описание предметной области:

В базе данных хранится информация об офисах компании, расположенных в разных городах страны.

Каждый покупатель компании обслуживается одним служащим.

Для каждого покупателя компании установлен лимит кредита.

Для каждого сотрудника установлен план на текущий календарный год.

БД должна содержать следующие сведения:

· название компании-клиента;

· лимит кредита, выданного компании-клиенту;

· имя и фамилия служащего;

· дата рождения служащего;

· должность служащего;

· дата приема служащего на работу;

· плановый объем продаж служащего;

· фактический объем продаж служащего;

· должность служащего;

· зарплата служащего;

· описание товара;

· цена единицы товара;

· количество товара на складе;

· дата приема заказа;

· заказанное количество товара;

· адрес отделения компании;

· плановый объем продаж для отделения.

Задания:

1. Создайте таблицы, используя необходимые средства поддержки целостности данных при реализации следующих требований:

а) Лимит кредита, выданного компании-клиенту не должен превышать 10000000 руб.

б) При оформлении заказа необходимо, чтобы количество заказанных единиц товара не превышало наличия их на складе. При заказе товара, количество единиц товара на складе должно автоматически уменьшится.

в) При оформлении заказа фактический объем продаж служащего должен увеличиваться в соответствии с суммой, на которую совершен заказ.

2. Создайте запросы:

a) Вывести список сотрудников, которые уже выполнили план.

b) Подсчитать объем продаж за первый квартал 2003 года.

c) Вывести список офисов, отсортированный по фактическим объемам продаж в порядке убывания.

d) Каков процент выполнения плана среди всех служащих?

e) Сколько клиентов у каждого служащего?

f) Вывести список товаров, на которые получен заказ стоимостью 1000000 руб. или больше.

g) Вывести список служащих, у которых средняя стоимость заказов на товары, изготовленных компанией HP, выше, чем общая стоимость заказов.

h) На какую сумму находится товар на складе?

i) Вывести список товаров, заказы на которые были оформлены в определенный день.

3. Создайте представление для конкретного служащего, показывающее его клиентов.

4. Создайте хранимую процедуру для увеличения зарплаты сотрудникам, которые выполнили план.

5. Создайте триггер, который контролирует, чтобы покупатель при оформлении заказа не получил кредит выше установленного.

Вариант 10

База данных “Турист”

Описание предметной области:

В базе данных хранится информация о турбазах и организуемых ими маршрутах.

На каждой турбазе может быть организован один или несколько из предлагаемых маршрутов. Турист может выбрать любой из маршрутов, предлагаемых турбазой или не выбрать ни один из них. Если турист не выбрал ни один из маршрутов, стоимость 1 дня увеличивается на 10%. Турбаза может относиться к одной из трех категорий. Стоимость 1 дня пребывания на турбазе зависит от категории

БД должна содержать следующие сведения:

Название турбазы;

Код турбазы;

Местонахождение турбазы;

Категория турбазы;

Стоимость 1 дня пребывания на турбазе;

Продолжительность путевки;

Типы маршрутов для данной турбазы (пеший, конный, горный и т.п.)

Фамилия, имя, отчество туриста;

Дата заезда;

Дата отъезда.

Задания:

1. Создайте таблицы, используя необходимые средства поддержки целостности данных при реализации следующих требований:

а) Продолжительность пребывания туриста на турбазе не должна превышать 24 дней.

b) Стоимость одного дня пребывания на турбазе должна находиться в заданном диапазоне.

2. Создайте запросы:

a) Фамилии туристов в алфавитном порядке, выбравших горные маршруты.

b) Список туристов для данной турбазы, не выбравших ни один из маршрутов.

c) Общее количество туристов, отправившихся в поход по горному маршруту на текущую дату.

d) Список турбаз, на которых стоимость проживания выше средней по всем имеющимся турбазам.

e) Список туристов, которые будут находиться на заданной турбазе в течение ближайших 5 дней.

3. Создайте представление для заказчика турпутевки, содержащее сведения о турбазах, маршрутах и датах заезда.

4. Создайте хранимые процедуры:

a) для увеличения стоимости проживания для туристов, которые не выбирают ни один из предлагаемых маршрутов;

b) для повышения стоимости проживания на 5 процентов на июль и август.

1. Создайте триггер, который контролирует, чтобы при добавлении нового маршрута код турбазы соответствовал коду турбазы в главной таблице.

ПРИЛОЖЕНИЕ 4

Различные типы ограничений

Тип целостности

Тип ограничения

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

Описание

Целостность полей

DEFAULT

DF

Определяет значение поля по умолчанию (на случай, если значение не было явно указано в операторе INSERT)

CHECK

CK

Указывает правило достоверности для значений поля

FOREIGN KEY

FK

Значения поля (полей) внешнего ключа должны соответствовать значениям поля (полей) первичного ключа таблицы, на которую ссылаются

Целостность сущностей

PRIMARY KEY

PK

Уникально идентифицирует каждую запись. Это гарантирует отсутствие в таблице повторяющихся значений и позволяет создать индекс для повышения производительности. Значения NULL не допускаются

UNIQUE

U

Предотвращает дублирование непервичных ключей, что позволяет создать индекс для повышения производительности. Допускаются значения NULL

Ссылочная целостность

FOREIGN KEY

FK

Определяет поле или набор полей, значения которых соответствуют первичному ключу этой же или другой таблицы

Целостность, определяемая пользователем

CHECK

CK

Определяет правило допустимости значений данных для поля

ПРИЛОЖЕНИЕ 7

Дополнительные параметры создаваемого индекса

Unique values - ввод в определённое поле только уникальных значений. Позволяет осуществлять автоматическую проверку уникальности при каждом добавлении новой записи. Рекомендуется установить обязательный ввод значений в поле, для которого планируется создание уникального индекса;

Clustered index - в системе SQL-сервер имеется возможность физического индексирования данных. Другими словами, использование индексов приводит к созданию отдельной структуры, которая связывается с физическим расположением данных в таблице. Использование этой опции позволяет произвести так называемое кластерное индексирование, в результате чего будут отсортированы данные в самой таблице согласно порядку этого индекса, и вся добавляемая информация будет приводить к изменению физического порядка данных. При этом нужно учитывать, что в таблице может быть определён только один кластерный индекс;

Ignore duplicate values - игнорирование ввода повторяющихся значений в проиндексированных полях. Использование данного параметра совместно с Unique values позволяет игнорировать уникальность значений для этого поля. Обычно использование этого параметра имеет значение при ориентации на распределение данных в разрабатываемых структурах;

Do not recompute statistics (not recommended) - определяет функцию автоматического обновления статистики для таблицы. Устанавливать не рекомендуется.

File group - осуществляет выбор файловой группы, в которой будет находиться создаваемый индекс. Использование индекса из другой файловой группы повышает производительность некластерных индексов в связи с параллельностью выполнения процессов ввода/вывода и работы с самим индексом. При выборе данного параметра активизируется список файловых групп, позволяющий определить необходимую группу для размещения индекса;

Fill factor (используется крайне редко) - осуществляется настройка разбиения индекса на страницы. Коэффициент fillfactor определяет в процентном соотношении размер создаваемых индексных страниц. Если планируется частое изменение, удаление и добавление информации в таблице базы данных, то коэффициент следует установить как можно меньше, например, 20. А установка коэффициенту значения 100 рекомендуется при использовании больших таблиц, обращение к которым обычно происходит только для чтения;

Pad index - определяет заполнение внутреннего пространства индекса и используется совместно с параметром fillfactor;

Drop existing - определяет повторное создание кластерного индекса, что позволяет предотвратить нежелательное обновление кластерных индексов.


Подобные документы

  • Основные конструкции структурированного языка запросов SQL. Изучение среды MS SQL Server Management Studio, проверка подлинности. Создание таблиц базы данных. Таблица specialit, сourse, group, discipline, account. Проектирование структур данных.

    лабораторная работа [963,2 K], добавлен 14.01.2016

  • Разбиение данных по таблицам и создание связей между таблицами. Нормализация и проектирование сценария работы базы данных. Выбор программного обеспечения. Требования к аппаратным и программным средствам для работы созданного программного продукта.

    курсовая работа [30,2 K], добавлен 23.01.2011

  • Этапы создания и разработки базы данных. Построение модели предметной области. Разработка даталогической и физической моделей данных, способы обработки данных о сотрудниках организации. Проектирование приложений пользователя. Создание кнопочной формы.

    курсовая работа [2,1 M], добавлен 14.02.2011

  • Понятие, модели и назначение информационных систем. Функциональное моделирование ИС. Диаграмма потоков данных. Декомпозиция процессов и миниспецификации. Реализация макета системы средствами MS SQL Server 2005. Создание базы данных. Скалярные функции.

    курсовая работа [1,0 M], добавлен 16.09.2012

  • Установка "Microsoft SQL SERVER 2012". Создание файла данных, журнала транзакций, таблиц, запросов и фильтров, диаграмм и триггеров, табличных форм и отчетов. Подключение файла данных к проекту. Создание простых и сложных ленточных форм для работы с ними.

    курсовая работа [1,9 M], добавлен 13.12.2013

  • Проектирование базы данных фирмы по предоставлению телекоммуникационных услуг с помощью СУБД MS SQL SERVER. Построение логической и физической модели данных. Описание информационных потребностей пользователя. Создание хранимых процедур и триггеров.

    курсовая работа [2,3 M], добавлен 21.03.2015

  • Цель инфологического моделирования базы данных. Создание с помощью СУБД Microsoft SQL Server шести сущностей с определенными атрибутами, представлений, основанных на соединении столбцов нескольких таблиц и связей между ними. Создание процедур и запросов.

    курсовая работа [721,4 K], добавлен 29.11.2009

  • Анализ предметной области, концептуальных требований и информационных потребностей к разрабатываемой базе данных студентов. Выбор информационных объектов и проектирование информационной структуры. Создание таблиц, отчетов, запросов на выборку и форм.

    курсовая работа [69,4 K], добавлен 18.11.2010

  • Основные сведения об SQL Server. Логическая структура реляционной базы данных. Создание базы данных Server. Обработка элементов оператора SELECT. Структура таблиц inserted и deleted. Ввод данных в таблицу "Клиенты". Краткая справка по языку запросов SQL.

    курсовая работа [2,9 M], добавлен 11.05.2012

  • Особенности и классификация обучающих программных средств обучения. Обзор методов обработки экспертной информации. Требования к программному комплексу лабораторных работ. Построение логической модели данных. Описание компьютерной реализации для студента.

    дипломная работа [2,0 M], добавлен 19.01.2017

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.