Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

триггер interbase [IB6.x]


Alex Chu ©   (2003-03-11 12:45:00) 

Г-да!

осваиваю триггера interbase

не совсем понимаю, почему возникает ошибка в триггере:

CREATE TRIGGER "ti_docs" FOR DOCS
ACTIVE AFTER INSERT POSITION 0
begin
update docs set dtcre=(select current_date from rdb$database)
where iddoc=new.iddoc;
end


Invalid token.
Dynamic SQL Error.
SQL error code = -104.
Token unknown - line 3, char -1.
begin.


zacho   (2003-03-11 13:04:00) [1]

А как триггер создаешь ? Если из скрипта, то еще SET TERM надо.
И еще, если iddoc - первичный ключ, то достаточно new.dtcre=current_date . Или вообще, для dtcre сделать DEFAULT CURRENT_DATE


Delirium^.Tremens   (2003-03-11 13:02:00) [2]


> Johnmen © (11.03.03 12:59)
> А еще лучше в описании роля DEFAULT "today"

И тогда забудь про свой триггер :-)


Johnmen   (2003-03-11 12:59:00) [3]

А еще лучше в описании роля DEFAULT "today"


Johnmen   (2003-03-11 12:58:00) [4]

Вместо
update docs set dtcre=(select current_date from rdb$database)
where iddoc=new.iddoc;

Пиши
new.dtcre="today";


Alex Chu   (2003-03-11 12:54:00) [5]

прошу прощения...
CREATE TRIGGER "ti_docs" FOR DOCS
ACTIVE AFTER INSERT POSITION 0
as
begin
update docs set dtcre=(select current_date from rdb$database)
where iddoc=new.iddoc;
end


все равно ошибка


Johnmen   (2003-03-11 12:51:00) [6]

AS пропущено


Наверх

Титульная страница Поиск, карта сайта Написать письмо