В начало

Столбцы вычисляемых значений

 

            Иногда очень удобно использовать в базе данных столбцы, данные в которых автоматически вычисляются. Причем вычисления производят не триггеры.

            Примером использования вычисляемых столбцов может служить таблица «Trudovaya_Knijka». Не трудно догадаться, что в этой таблице будут следующие поля:

id_Zapisi,

Organizaciya,

God_Postupleniya,

God_Uvolneniya,

Staj.

            Совершенно понятно, что стаж можно посчитать и потом, но иногда удобно его знать сразу при вводе значений в таблицу. Для этого надо заложить механизм вычисления этого поля «Staj» на этапе создания таблицы. Создавая таблицу посредством SQL-запроса в «Interbase 6.5» нужно запустить «IBConsole», открыть/создать локальный/удаленный сервер, создать базу данных, а потом запустив утилиту «Interactive SQL» выполнить запрос на создание таблицы.

CREATE TABLE Trudovaya_Knijka (

id_Zapisi INTEGER NOT NULL,

Organizaciya VARCHAR(20),

God_Postupleniya INTEGER,

God_Uvolneniya INTEGER,

Staj COMPUTED BY (God_Uvolneniya - God_Postupleniya),

PRIMARY KEY (id_Zapisi));

COMMIT;

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

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

SELECT

Organizaciya AS "Организация",

God_Postupleniya AS "Год пост.",

God_Uvolneniya AS "Год уволн.",

Staj AS "Стаж"

FROM Trudovaya_Knijka;

 

Рис. 1. Результат запроса к БД «Trudovaya_Knijka»