Партнерка на США и Канаду по недвижимости, выплаты в крипто

  • 30% recurring commission
  • Выплаты в USDT
  • Вывод каждую неделю
  • Комиссия до 5 лет за каждого referral

Правительство Санкт-Петербурга

Комитет по образованию

Государственное образовательное учреждение
среднего профессионального образования

Санкт-Петербургский колледж управления и экономики
«Александровский лицей»

,

БАЗЫ ДАННЫХ

Санкт-Петербург

2011


Оглавление

Практическая работа № 1. ПОСТРОЕНИЕ ИНФОРМАЦИОННОЙ МОДЕЛИ.. 4

Практическая работа № 2. ПРОЕКТИРОВАНИЕ ТАБЛИЦ.. 10

Практическая работа № 3. РАЗРАБОТКА ЗАПРОСОВ.. 14

Практическая работа № 4. РАЗРАБОТКА ФОРМ... 23

Практическая работа № 5 ОБРАБОТКА ДАННЫХ С ПОМОЩЬЮ ОТЧЕТОВ.. 28

ЛИТЕРАТУРА.. 33

Предметная область: оформление туристической поездки через туристическую фирму

Практическая работа № 1.
ПОСТРОЕНИЕ ИНФОРМАЦИОННОЙ МОДЕЛИ

Цель работы: научиться анализировать предметную область в аспекте построения информационной модели.

Описание, постановка задачи

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

Построение информационной модели

Исходя из поставленной задачи, выделим следующие объекты:

·  тур,

·  клиент,

·  продавец,

·  заказ,

·  счет.

Определим для включения в модель объектов взаимосвязи:

Рис.1.1. Информационная модель

Для каждого объекта определим свойства, которые будем хранить в базе данных:

НЕ нашли? Не то? Что вы ищете?

Таблица 1.1

Свойства объектов

Объект

Свойство

Тур

Название тура

Название страны

Название города

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

Количество дней

Дети

Перелет

Стоимость

Название экскурсии

Экскурсия

Дата начала

Описание тура

Клиент

Фамилия

Имя

Город

Адрес

Телефон

Скидка

Заказ

Номер заказа

Дата заказа

Фамилия клиента

Имя клиента

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

Название тура

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

Общая стоимость

Счет

Номер счета

ФИО клиента

Название тура

Дата выписки

Сумма

Оплата

Дата оплаты

Продавец

Фамилия

Имя

Адрес

телефон

Приведение модели к требуемому уровню нормальной формы

Приведение модели к требуемому уровню нормальной формы является основой построения реляционной БД. Введение нормализации отношений при разработке информационной модели обеспечивает минимальный объем физической БД и ее максимальное быстродействие. Нормализация информационной модели выполняется за несколько шагов.

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

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

Шаг 2. Если все возможные ключи отношения содержат по одному атрибуту, то это отношение задано во второй нормальной форме. Приведение отношений ко второй нормальной форме заключается в обеспечении полной функциональной зависимости всех атрибутов от ключа за счет разбиения таблицы на несколько, в которых все имеющиеся атрибуты будут иметь полную функциональную зависимость от ключа этой таблицы.

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

Шаг 3. Преобразование в третью нормальную форму происходит за счет разделения исходного отношения на два. Например, если все данные о турах хранятся в одном отношении, то для нескольких туров в одну и ту же страну пришлось бы многократно указывать название страны, названия городов, названия отелей. Дублирование исчезнет, если из одного отношения выделить отношения, в которых будут храниться данные о странах, городах, отелях.

Основные правила, которым рекомендуется следовать при проектировании БД:

·  исключить повторяющиеся группы – для каждого набора связанных атрибутов создать отдельную таблицу и снабдить первичным ключом. Выполнение этого правила автоматически приведет ко второй нормальной форме;

·  исключить избыточные данные – если атрибут зависит только от части составного ключа, необходимо переместить атрибут в отдельную таблицу. Это правило помогает избежать потери одних данных при удалении каких-либо других;

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

Изменения в модели связаны в основном с введением искусственных атрибутов - кодов, необходимость в которых определяется процессом нормализации.

В общем случае рекомендуется использовать коды вместо естественных атрибутов в следующих случаях:

·  в предметной области естественный атрибут отношения не обладает свойством уникальности;

·  если отношение участвует во многих связях, то для их отображения создается много таблиц, в каждой из которых повторяется идентификатор отношения, который удобнее представить более коротким кодом;

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

С учетом вышеизложенных правил в базе выделены дополнительные объекты СТРАНЫ, ГОРОДА, ОТЕЛИ, ЭКСКУРСИИ.

Описание логической модели

На этом этапе составляются проекты таблиц.

Таблица 1.2

Проект таблицы

№ п/п

Имя
поля

Описание поля
(подпись поля)

Тип
данных

Свойства

Таблица ТУР

1.

Код_тура

Код тура

текстовый

Размер 10; обязательное; индексированное, совпадения не допускаются

2.

Наименование

Наименование тура

текстовый

р.30

3.

Код_стр

Код страны

текстовый

р.5; индексированное, совпадения допускаются; подстановка: поле со списком; таблица или запрос: Страна; 1, 2; ширина списка 5; ограничиться списком – нет

4

Код_гор

Код города

текстовый

р.5; индексированное, совпадения допускаются; подстановка: поле со списком; таблица или запрос: Город; 1: 2; ширина списка 5; ограничиться списком – нет

5.

Кол_дн

Количество дней

числовой

Байт, условие на значение: >=3 And <=21, сообщение об ошибке: «поездка минимум на 3 дня и максимум на 21»

6.

Дети

Отдых с детьми

логический

Да/нет

7.

Перелет

Перелет входит в стоимость

логический

Да/нет

8.

Экс

Экскурсии предусмотрены

логический

Да/нет

9.

Код_экс

Код экскурсии

текстовый

р.5, индексированное, совпадения допускаются; подстановка; поле со списком; таблица или запрос; ЭКСКУРСИЯ; 1; 2; ограничиться списком – нет

10.

Стоимость

Стоимость тура в руб.

денежный

Денежный

11.

Д_нач

Дата начала тура

Дата/время

Краткий формат даты

12.

Оп_тура

Описание тура

Поле MEMO

Таблица КЛИЕНТ

1.

Код_кл

Код клиента

текстовый

р.5, индексированное, совпадения не допускаются, обязательное

2.

Фам

Фамилия

текстовый

р.30

3.

Имя

Имя

текстовый

р.20

4.

Адрес

Адрес

текстовый

р.30

5.

Тел

телефон
(и код города)

текстовый

р.15, маска ввода (###\)###-##-##

6.

Город

Город проживания

текстовый

р.20

7.

Скида

Скидка в стоимости

числовой

Одинарное с плавающей точкой, процентный

Таблица СТРАНА

1.

Код_стр

Код страны

текстовый

р.5, индексированное, совпадения не допускаются, обязательное

2.

Наименование

Наименование страны

текстовый

р.30

Таблица ОТЕЛЬ

1.

Код от

Код отеля

текстовый

р.5, индексированное, совпадения не допускаются, обязательное

2.

Код_гор

Код города

текстовый

р.5, индексированное, совпадения допускаются; подстановка: поле со списком; таблица или запрос; ГОРОД; 1; 2; ширина списка 5; ограничиться списком - нет

3.

Название

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

текстовый

р.30

4.

Услуги

Обслуживание в отеле

логический

Да/нет

5.

Кат

Категория отеля

текстовый

р.7; подстановка: поле со списком; список значений; ***,****,*****,1,1

6.

Ст_сут

Проживание в сутки

денежный

денежный

7.

Опис_усл

Описание услуг

поле MEMO

8.

ФОТО

Фотография отеля

поле OLE

изображение

Таблица ЭКСКУРСИЯ

1.

Код_экс

Код экскурсии

текстовый

р.7; индексированное, совпадения не допускаются, обязательное

2.

Ст_экс

Стоимость
экскурсий

денежный

денежный

3.

Опис_экс

Описание экскурсии

Поле MEMO

Таблица СЧЕТ

1.

№_сч

Счет

текстовый

р.10, индексированное, совпадения не допускаются, обязательное

2.

Код_кл

Код клиента

текстовый

р. 5; индексированное, совпадения допускаются; подстановка: поле со списком; таблица или запрос; Клиент; 1; 2; ширина списка 5; ограничиться списком - нет

3

Код_тура

Код тура

текстовый

р.7; индексированное, совпадения допускаются; подстановка: поле со списком; таблица или запрос; ТУР; 1; 2; ширина списка 5; ограничиться списком - нет

4.

Дата_вып

Дата выписки счета

дата/время

Краткий формат

5.

Оплата

Пометка об оплате

логический

Да/нет

6.

Сумм_опл

Сумма оплаты, руб.

денежный

С разделителями разрядов, авто, значение по умолчанию 0

7.

Дата_опл

Дата оплаты счета

дата/время

Краткий формат

Таблица ЗАКАЗ

1.

Код_зак

Код заказа

текстовый

р.5, индексированное, совпадения не допускаются, обязательное

2.

Код_кл

Код клиента

текстовый

р.7; индексированное, совпадения допускаются; подстановка: поле со списком; таблица или запрос; КЛИЕНТ; 1; 2; ширина списка 5; ограничиться списком - нет

3.

Код_тура

Код тура

текстовый

р.7; индексированное, совпадения допускаются; подстановка: поле со списком; таблица или запрос; ТУР; 1; 2; ширина списка 5; ограничиться списком - нет

4.

Код_от

Код отеля

текстовый

р.7; индексированное, совпадения допускаются; подстановка: поле со списком; таблица или запрос; ОТЕЛЬ; 1; 2; ширина списка 5; ограничиться списком - нет

5.

Код_прод

Таб. № продавца

текстовый

р.7; индексированное, совпадения допускаются; подстановка: поле со списком; таблица или запрос; ПРОДАВЕЦ; 1; 2; ширина списка 5; ограничиться списком - нет

6.

Ст_пер

Стоимость перелета в оба конца

Денежный

Денежный

7.

Д_зак

Дата заказа

Дата/время

Краткий формат

8.

Общ_ст

Общая стоимость поездки

Денежный

денежный

Таблица ГОРОД

1.

Код_гор

Код города

текстовый

р. 5, индексированное, совпадения не допускаются, обязательное

2.

Название

Название города

текстовый

р.30

3.

Код_стр

Код страны

текстовый

р. 5, индексированное, совпадения допускаются; подстановка: поле со списком; таблица или запрос; СТРАНА; 1; 2; ширина списка 5; ограничиться списком - нет

Таблица ПРОДАВЕЦ

1.

Код_пр

Таб. № продавца

текстовый

р. 5, индексированное, совпадения не допускаются, обязательное

2.

Фамилия

Фамилия

текстовый

р.20

3.

Имя

Имя

текстовый

р.20

4.

Адрес

Адрес

текстовый

р. З0

5.

Телефон

Телефон

Текстовый

р.15

Практическая работа № 2.
Проектирование таблиц

Из за большого объема этот материал размещен на нескольких страницах:
1 2