INTERBASE

БД Прием Заказов

 

            Например, для хранения заказов нужно создать базу  данных «Прием заказов» в СУБД «Interbase 6.5».

            В базе данных «Прием заказов» будет четыре таблицы: Список заказов, Клиенты, Заказы, Товары. Опишем вначале состав полей таблиц базы данных «Прием заказов». В базе «Прием заказов» будет 3 первичных и 3 внешних ключа.

Клиенты

id_Клиента

Клиент

Расчетный счет

Адрес

 

Список заказов

Дата размещения

Дата исполнения

id_Заказа

id_Клиента

 

Заказы

id_Заказа

id_Товара

Количество

Сумма заказа

Скидка

Товары

id_Товара

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

Цена

            Запускаем «IBConsole», которую можно найти или через кнопку «ПУСК», или в папке «C:\Program Files\Borland\InterBase\bin\IBConsole.exe». Создаем локальный сервер. Далее запускаем утилиту «Interactive SQL» из «IBConsole», у нее даже есть своя кнопка на панели в виде зеленого человечка, бегущего по буквам SQL. И выполняем запрос на создание базы данных, хотя можно создать и через контекстное меню, применив ее на локальном сервере и выбрав «Create Database…». Там же есть опция и на регистрацию базы на сервере, для этого надо выбрать «Register…».

Листинг 1. Создание БД

CREATE DATABASE 'C:\INTERBASE\Прием заказов.gdb'

USER 'SYSDBA'

PASSWORD 'masterkey'

PAGE_SIZE = 4096

DEFAULT CHARACTER SET WIN1251;

COMMIT;

 

            Когда, таким образом, мы создали и подключили базу «Прием заказов» можно приступить к созданию таблиц и прочего. Для создания таблицы «Klienti» нужно написать и выполнить следующий SQL-код в утилите «Interactiv SQL». Название таблиц и полей на кириллице в «Interbase 6.5» не прокатило, поэтому пришлось перейти на латиницу.

CREATE TABLE Klienti (

id_Klienta INTEGER Not Null,

Klient VARCHAR(20),

Raschetny_Schet VARCHAR(20),

Adres VARCHAR(20),

PRIMARY KEY(id_Klienta));

COMMIT;

 

            Для создания таблицы «Tovari» нужно выполнить аналогичный код:

CREATE TABLE Tovari (

id_Tovara INTEGER Not Null,

Naimenovanie VARCHAR(20),

Cena INTEGER,

PRIMARY KEY(id_Tovara));

COMMIT;

            Аналогично для таблицы «Zakazi»:

CREATE TABLE Zakazi (

ID_Zakaza INTEGER Not Null,

ID_Tovara INTEGER,

Kolichestvo INTEGER,

Summa INTEGER,

Skidka SMALLINT,

PRIMARY KEY (ID_Zakaza),

FOREIGN KEY (ID_Tovara) REFERENCES Tovari (ID_Tovara));

COMMIT;

            И, наконец, для таблицы «Spisok_Zakazov» надо написать и выполнить следующий SQL-запрос:

CREATE TABLE Spisok_Zakazov (

Data_Razmesheniya DATE,

Data_Ispolneniya DATE,

ID_Zakaza INTEGER,

ID_Klienta INTEGER,

FOREIGN KEY (ID_Zakaza) REFERENCES Zakazi (ID_Zakaza),

FOREIGN KEY (ID_Klienta) REFERENCES Klienti (ID_Klienta));

COMMIT;

            Например, чтобы получить информацию о клиентах и заказах надо выполнить выборку по двум таблицам: «Spisok_Zakazov» и «Klienti».

SELECT data_Razmesheniya AS "Дата размещения",

       Data_Ispolneniya AS "Дата исполнения",

       Klient AS "Клиент"

FROM Spisok_Zakazov SZ, Klienti K

WHERE SZ.ID_Klienta=K.ID_Klienta;

 

Рис. 1. Заказы и клиенты

 


База данных предприятий Реутов (1721 адресов)
База данных предприятий Реутов (1721 адресов)


База размеров шин и дисков для подбора по автомобилю
База размеров шин и дисков для подбора по автомобилю


Большая база трастовых сайтов
Большая база трастовых сайтов