p align="justify"> Номер рахунку за послуги: цілочисельний;
Ціна надання послуги: з фіксованою точністю до 2-х знаків;
Кількість разів надання послуги: з фіксованою точністю до 2-х знаків.
Розроблена фізична модель бази даних наведена на малюнку 3.2.
4. Реалізація бази даних
4.1 Реалізація SQL-запитів для створення об'єктів в БД
Об'єкти бази даних створюються на сервері СУБД MySQL. Створення об'єктів бази даних виконується за допомогою мови SQL-запитів. Всі SQL-запити для створення об'єктів в базі даних отримані за допомогою автоматичної генерації скриптів в програмі ER-Win на основі побудованої фізичної моделі.
SQL-запит для створення бази даних наступний:
CREATE DATABASE «HOTEL»
Кожна таблиця в базі даних може бути створена за допомогою SQL-оператора наступного синтаксису:
CREATE TABLE table_name
(column_1 data_type, _2 data_type,
..., _KEY (column_1)
)
де table_name - ім'я створюваної таблиці;
column_1, column_2 - імена полів таблиці;
data_type - тип даних для поля;
PRIMARY_KEY (ім'я_поля) - створення первинного ключа.
Таблиця APPARTMENT_CUST («Рахунок за проживання») створена за допомогою наступного SQL-запиту:
CREATE TABLE IF NOT EXISTS `appartment_cust` (
`ID` int (10) NOT NULL auto_increment,
`CUST_DATE` date NOT NULL,
`APPARTMENT_ID` int (11) NOT NULL,
`START_DATE` date NOT NULL,
`END_DATE` date NOT NULL,
`APPARTMENT_PRICE` decimal (10,2) NOT NULL,
`APPARTMENT_RESERV_REC_ID` int (11) default NULL, KEY (`ID`)
)
Таблиця APPARTMENT_CUST_DETAIL («Проживання в номері») створена за допомогою наступного SQL-запиту:
CREATE TABLE IF NOT EXISTS `appartment_cust_detail` (
`APPARTMENT_CUST_ID` int (10) NOT NULL,
`CUSTOMER_ID` int (10) NOT NULL, KEY (`APPARTMENT_CUST_ID`, `CUSTOMER_ID`)
)
Таблиця APPARTMENT_RESERV («Бронювання номера») створена за допомогою наступного SQL-запиту:
CREATE TABLE IF NOT EXISTS `appartment_reserv` (
`REC_ID` int (10) NOT NULL auto_increment,
`REC_DATE` datetime NOT NULL,
`CUSTOMER_ID` int (10) NOT NULL,
`APPARTMENT_ID` int (10) NOT NULL,
`START_DATE` date NOT NULL,
`END_DATE` date NOT NULL,
`ADDITIONAL_NOTE` varchar (200) default NULL, KEY (`REC_ID`)
)
Таблиця CUST («Рахунок за послуги») створена за допомогою наступного SQL-запиту:
CREATE TABLE IF NOT EXISTS `cust` (
`ID` int (10) NOT NULL auto_increment,