В начало

БД Apteka

 

            Постановка задачи: нужно создать базу данных «Apteka» в среде «Interbase 6.5».

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

Рис. 1. Окно создания новой базы данных

 

            Все, база данных создана, остается создать необходимые таблицы. Для этого из «IBConsole» запускаем утилиту «Interactive SQL». Эта утилита предназначена для работы c SQL-запросами. Используем эту утилиту по назначению и создадим первую таблицу.

CREATE TABLE Gruppi_Farm_Preparatov (

id_Gruppi INTEGER NOT NULL,

Gruppa VARCHAR(20),

PRIMARY KEY(id_Gruppi));

COMMIT;

            Сразу заполним таблицу «Gruppi_Farm_Preparatov» несколькими записями. Чтобы это сделать, надо выбрать только что созданную таблицу в разделе «Tables», в открывшемся окне перейти на закладку «Data» и ввести данные.

Рис. 1. Таблица «Gruppi_Farm_Preparatov»

 

            Создадим вторую таблицу «Usloviya_Otpuska», для это пишем другой запрос. И «условия отпуска» в данном случае не то, когда люди раз в год куда-то ездят отдыхать.

CREATE TABLE Usloviya_Otpuska(

id_Usloviy INTEGER NOT NULL,

Uslovie VARCHAR(15),

PRIMARY KEY(id_Usloviy));

COMMIT;

            В этой таблице будет всего две записи.

Рис. 2. Таблица «Usloviya_Otpuska»

 

            Далее, поскольку мы живем не в закрытом мире и не все препараты производятся в одном месте, на одной фармацевтической фабрике, нужно создать таблицу «Proizvoditeli».

CREATE TABLE Proizvoditeli(

id_Proizvoditelya INTEGER NOT NULL,

Proizvoditel VARCHAR(20),

Gorod VARCHAR(20),

Strana VARCHAR(20),

PRIMARY KEY(id_Proizvoditelya));

COMMIT;

            Введем в список производителей, а именно в таблицу «Proizvoditeli» наиболее известных из них.

Рис. 3. Таблица «Proizvoditeli»

 

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

CREATE TABLE Formi_Vipuska(

id_Formi INTEGER NOT NULL,

Forma VARCHAR(15),

PRIMARY KEY (id_Formi));

COMMIT;

            Заполним таблицу «Formi_Vipuska».

Рис. 4. Таблица «Formi_Vipuska»

 

            Т.к. даже в рамках одной формы выпуска бывают препараты с разной дозировкой, то напрашивается мысль о создании таблицы «Dozirovki».

CREATE TABLE Dozirovki(

id_Dozirovki INTEGER NOT NULL,

Dozirovka VARCHAR (15),

PRIMARY KEY(id_Dozirovki));

COMMIT;

            Внесем в таблицу «Dozirovki» некоторые их значения.

Рис. 5. Таблица «Dozirovki»

            Далее создадим таблицу «Sklad».

CREATE TABLE Sklad(

id_Preparata INTEGER NOT NULL,

Nazvanie VARCHAR(30),

id_Formi INTEGER NOT NULL,

id_Dozirovki INTEGER NOT NULL,

Cena_Zakupochnaya NUMERIC(15,2),

Cena_Otpusknaya NUMERIC(15,2),

Kolichestvo INTEGER,

PRIMARY KEY (id_Preparata),

FOREIGN KEY (id_Formi) REFERENCES Formi_Vipuska(id_Formi),

FOREIGN KEY (id_Dozirovki) REFERENCES Dozirovki(id_Dozirovki));

COMMIT;

 

Рис. 6. Таблица «Sklad»

            И, наконец, создадим таблицу «FarmPreparati».

CREATE TABLE FarmPreparati(

id_Preparata INTEGER NOT NULL,

id_Gruppi INTEGER NOT NULL,

id_Usloviy INTEGER NOT NULL,

id_Proizvoditelya INTEGER NOT NULL,

Instrukciya BLOB SUB_TYPE 1,

FOREIGN KEY(id_Preparata) REFERENCES Sklad(id_Preparata),

FOREIGN KEY(id_Gruppi) REFERENCES Gruppi_Farm_Preparatov(id_Gruppi),

FOREIGN KEY(id_Usloviy) REFERENCES Usloviya_Otpuska(id_Usloviy),

FOREIGN KEY(id_Proizvoditelya) REFERENCES Proizvoditeli(id_Proizvoditelya));

COMMIT;

 

Рис. 7. Таблица «FarmPreparati»

 

            Таким образом, в базе данных «Apteka» было создано 7 таблиц:

Dozirovki;

FarmPreparati;

Formi_Vipuska;

Gruppi_Farm_Preparatov;

Proizvoditeli;

Sklad;

Usloviya_Otpuska.