Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.12.19;
Скачать: CL | DM;

Вниз

Помогите с примером триггера   Найти похожие ветки 

 
Senka   (2002-11-28 11:20) [0]

Люди добрые....
Как сделать так чтобы например при добавлении новой записи в таблицу поле первичного ключа автоматически заносилось увеличиваясь на единицу.
Вот пример но он чегото не работает:

CREATE GENERATOR "TEHNIKA_GEN";

SET TERM ^ ;
CREATE TRIGGER "SETTEHN" FOR "TEHNIKA"
ACTIVE BEFORE INSERT POSITION 0
as
begin
new.N_TEH = gen_ID(TEHNIKA_Gen, 1);
end ^
COMMIT WORK ^
SET TERM ;^

Спасиба.


 
Johnmen ©   (2002-11-28 11:21) [1]

:new.N


 
stone ©   (2002-11-28 11:23) [2]

Давно уже не работал с интербэйзом, но по-моему тут кавычки везде лишние.


 
Alexandr ©   (2002-11-28 11:30) [3]

нет. Это от третьего диалекта.
Стандарт SQL-92 в отношении кавычек почитай.


 
Senka   (2002-11-28 13:43) [4]

Дело не в кавычках. Их уже генерит сам интербейз я взял код уже скомпилированный.
А пример подобный у кого нибудь есть. И что это :new.N -поставить двоеточие перед new.


 
Alexandr ©   (2002-11-28 13:51) [5]

да правильный триггер. Должен работать.
Другое дело, что ты у себя в дадасете значения не видишь... Пока запрос не переоткроешь. Так это уже другая проблема.


 
Andriano ©   (2002-11-28 14:21) [6]

new.N_TEH = gen_ID(TEHNIKA_Gen, 1) ^


 
Andriano ©   (2002-11-28 14:22) [7]

new.N_TEH = gen_ID(TEHNIKA_Gen, 1) ^


 
Senka   (2002-11-28 17:34) [8]

Если сделать так

new.N_TEH = gen_ID(TEHNIKA_Gen, 1)^

то ерор вылазит и не компилит.



 
Alexandr ©   (2002-11-29 07:44) [9]

да не слушай ты тут всякий бред.
У тебя же откомпилировался триггер.

А с чего ты взял, что не заботает?


 
Wolf226 ©   (2002-11-29 11:09) [10]

Тригер правильный, похоже проблема в другом.
Например в самой программе.
Поле первичного ключа not null.
поэтому Delphi по умолчанию ставит Required:=true;
И если ты его не заполнишь, то он не выполнит Post
Поэтому надо явно определить поля. И поставить Required:=false
для поля N_TEH.



Страницы: 1 вся ветка

Текущий архив: 2002.12.19;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.012 c
14-61783
Mad_Ghost
2002-11-27 10:55
2002.12.19
RxDBGrid


6-61734
krai
2002-10-21 15:44
2002.12.19
POP3 сервер


3-61430
vaneks
2002-11-26 13:17
2002.12.19
Уникальный индефикатор?


3-61452
nick-from
2002-11-30 11:56
2002.12.19
Исходники БД


1-61645
_dmitry
2002-12-05 15:40
2002.12.19
Полупрозрачность на Canvas