В начало

Контроль расхода по дате

           

В будущей базе данных «Склад» предполагается наличие трех таблиц: Приход, Расход и Товары.

            Надо контролировать расход товара таким образом, чтобы дата расхода товара была позже даты его прихода.

            Запускаем «IBConsole», кликаем по ветке «Databases» правой кнопкой мыши и выбираем  «Create Database…». В открывшемся окне устанавливаем параметры базы данных.

Рис. 1. Параметры базы данных «Sklad»

 

            Далее из «IBConsole» запускаем утилиту «Interactive SQL» и с помощью запросов создаем необходимые таблицы, а именно: Tovar, Prihod и Rashod. Для создания таблицы «Tovar» вполне подойдет такой запрос:

CREATE TABLE Tovar (

Tovar VARCHAR(20) NOT NULL,

PRIMARY KEY (Tovar));

COMMIT;

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

CREATE TABLE Prihod (

Data_Prihoda DATE,

Tovar VARCHAR(20) NOT NULL,

Kolichestvo INTEGER,

FOREIGN KEY (Tovar) REFERENCES Tovar(Tovar));

COMMIT;

            И в завершении сделаем таблицу «Rashod», в которой наложим ограничения на дату.

CREATE TABLE Rashod (

Data_Rashoda DATE,

Tovar VARCHAR(20) NOT NULL,

Kolichestvo INTEGER,

FOREIGN KEY (Tovar) REFERENCES Tovar(Tovar),

CONSTRAINT Na_Datu_Prodaji

CHECK (Data_Rashoda >

(SELECT Data_Prihoda

FROM Prihod

WHERE Prihod.Tovar = Rashod.Tovar)));

COMMIT;

            Таким образом, если в таблице «Prihod» будет проведен товар со следующими датами:

        Анальгин на 01.01.2015,

        Баралгин на 02.02.2015,

        Цитрамон на 03.03.2015.

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

            И если производить действия с записями таблицы «Rashod», то уже не получится выставить даты менее дат прихода.

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