создаем таблицу
Код | CREATE TABLE GAZ ( ID "INT" NOT NULL /* "INT" = INTEGER CHECK ((VALUE >= 0) or (VALUE is NULL) or (VALUE = -1)) */, NAME STRING20 NOT NULL COLLATE PXW_CYRL /* STRING20 = VARCHAR(20) */, EXP BOOL COLLATE PXW_CYRL /* BOOL = VARCHAR(1) DEFAULT 'T' */ );
|
создаём генератор (он будет хранить уникальное значение)
Код | CREATE GENERATOR GEN_GAZ_ID;
|
создаем первичный ключ
Код | ALTER TABLE GAZ ADD CONSTRAINT PK_GAZ PRIMARY KEY (ID);
|
создаём триггер "перед добавлением"
Код | /* Trigger: GAZ_BI */ CREATE TRIGGER GAZ_BI FOR GAZ ACTIVE BEFORE INSERT POSITION 0 AS BEGIN IF (NEW.ID IS NULL) THEN NEW.ID = GEN_ID(GEN_GAZ_ID,1); -- новое значение для поля ID, будет сгененрировано функцией GEN_ID -- но будет сгенерировано в том случае, если ты передашь пустое значение END
|
|