ОБЩАЯ ХАРАКТЕРИСТИКА ЯЗЫКА SQL
Язык SQL включает в себя два подмножества:
- • подмножество языка для описания данных (SQL—DDL);
- • подмножество языка для манипулирования данными (SQL— DML).
Подмножество языка описания данных предоставляет средства для создания объектов базы данных, к которым прежде всего относится таблица. При определении таблицы необходимо указать используемые для колонок таблицы типы данных, а также ограничения, накладываемые на данные. Эти ограничения проверяются тогда, когда выполняются соответствующие операции с данными, определяемые подмножеством языка манипулирования данными. В связи с этим упомянутые подмножества языка SQL—DDL и DML очень тесно связаны между собой и используют некоторые общие возможности языка SQL, с представления которых и начинается данное описание.
Помимо указанных выше, в современных версиях SQL выделяют еще одно подмножество языка — для управления доступом к данным (SQL—DCL— Data Control Language).
Возможности языка SQL будут проиллюстрированы на некотором конкретном примере.
ОПИСАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ «ПРОКАТ АВТОМОБИЛЕЙ»
Прежде всего следует отметить, что рассматриваемая здесь база данных проката автотранспортных средств является исключительно учебной базой данных. Ее основное назначение заключается в том, чтобы предоставить некоторый набор данных, на основе которых можно изучить синтаксис и семантику основных предложений SQL, а также получить представление о принципах создания запросов к базе данных. База данных содержит информацию о несуществующей на самом деле организации, которая предоставляет услуги в области проката транспортных средств.
Проектирование любой базы данных начинается с анализа бизнес-правил и принципов функционирования соответствующей организации. В соответствии с этим предположим, что наша организация имеет большой парк автотранспортных средств и представительства (офисы) в различных городах и странах, в которых оформляются договоры с клиентами на прокат (аренду) автотранспортных средств. Клиентами организации могут быть частные лица, имеющие водительское удостоверение или другой документ, удостоверяющий личность. Если клиент не имеет водительского удостоверения, он может арендовать транспортное средство только с водителем (дополнительное условие аренды).
В договоре указываются все условия аренды (начало аренды, срок, контактное лицо организации для связи при возникновении каких-либо нештатных ситуаций и др.), условия получения и возврата автотранспортного средства (забирать автомобиль можно разными вариантами: самостоятельно на специализированных стоянках компании либо доставка за дополнительную плату по конкретному адресу, и так же можно вернуть), могут быть указаны различные дополнительные условия (например, страховка, франшиза — часть, которую оплачивает клиент в случае повреждений, количество водителей, количество бесплатных километров, входящих в стоимость, и т.п.). Договор считается вступившим в силу только после его оплаты.
Договор может быть аннулирован до наступления срока аренды; в этом случае, если договор уже был оплачен, клиенту возвращается стоимость договора. Все факты перечисления денег должны фиксироваться.
Оплата осуществляется либо банковской картой, если автомобиль резервируется через Интернет заранее, либо наличными или картой в случае без предварительного бронирования. Также при возврате автомобиля возможны дополнительные оплаты, связанные со штрафами при использовании автомобиля. Оплата договора может быть выполнена в любой валюте с учетом текущего курса на день оплаты.
Клиент, получивший автотранспортное средство, фиксирует его возврат в любом офисе организации. При возврате транспортного средства возможен перерасчет услуг (если, например, нарушены сроки договора).
Полноатрибутная схема спроектированной базы данных в соответствии с методологией ШЕЕ1х приведена на рис. 7.1.
В Приложении 1 приведено описание схемы базы данных в соответствии с реляционной моделью данных.
Клиент
Страна
Код страны
указана для
Код клиента
Название
имдет
і
Офис проката

указан для выдачи в
указан для возврата в
Фамилия
Имя
Отчество
Город
Адрес
Водительское удостоверение (АК1 1) Код страны (FK)
Платежный документ
Номер документа
оформляєт
Договор аренды
Номер договора
указан
Номер договооа (РК) Тип документа Дата оплаты Сумма
Код валюты (РК)
Категория
Транспортное средство
Код категории
Код ТС
Название Количество мест
Код категории (РК)
Стоимость проката
Марка
Модель
Цвет
Госномер (АК1.1) Код валюты (РК)
указала і
get Код офиса (FK) return.Код офиса (FK)
Дата оформления
Дата оплаты
Срок аренды
Дата начала аренды
Фактическая дата окончания аренды
Менеджер
Телефон
Договор аннулирован Код клиента (FK)
Код ТС (FK)
Уточнение договора
Номер договора (FK) Номер записи (РК)
Коэффициент
-9-
Дополнительные условия аренды Номер записи
указана з
влад
L
указа»«для
Денежная единица
Код валюты
Название (АК1.1)
Код страны (РК) (АК12
Код валюты (РК) Стоимость
указала в
является 1-й р.е
Курс денежной единицы
является 2-й р.е.
Номер записи
I--• in Код валюты (FK)
for.Код валюты (РК) Дата
Значение курса
Рис. 7.1. Полноатрибутная схема базы данных проката автотранспортных
средств