Страница 1 из 1

Почему Triggers не работает??!!

Добавлено: 02 фев 2007, 11:46
john_chek
Здравствуйте! Помогите решить проблему! Создал exceptions - first_not_edit. Пишу тригер BeforeUpdate в таблице Dolg:

Код: Выделить всё

AS
begin
  if (dolg.id = 1) then exception first_not_edit;
end
Выдаёт ошибку:
SQL error code = -206.
Column unknown.
DOLG.ID.

Но это не правда! ID есть в этой таблице, как PK!
Кстати я недавно обновил Firebird 1,5 до 2,0! Может в этом причина? Что не так?

Re: Почему Triggers не работает??!!

Добавлено: 02 фев 2007, 12:05
SAMZ
john_chek писал(а):Здравствуйте! Помогите решить проблему! Создал exceptions - first_not_edit. Пишу тригер BeforeUpdate в таблице Dolg:

Код: Выделить всё

AS
begin
  if (dolg.id = 1) then exception first_not_edit;
end
Выдаёт ошибку:
SQL error code = -206.
Column unknown.
DOLG.ID.

Но это не правда! ID есть в этой таблице, как PK!
Кстати я недавно обновил Firebird 1,5 до 2,0! Может в этом причина? Что не так?
А квалификатор dolg тебе здесь зачем. Для обращения к необходимому значению колонки использу1 OLD.id или NEW.Id в зависимости от ситуации

Добавлено: 02 фев 2007, 12:11
john_chek
Спасибо! Просто в FB 1,5 делал через квалификатор, а теперь значит через old.

Добавлено: 02 фев 2007, 12:18
WildSery
john_chek писал(а):Спасибо! Просто в FB 1,5 делал через квалификатор, а теперь значит через old.
Очень неправильно делал.
У меня ещё 1.0, а всё равно через NEW и OLD всё. Наверное поэтому особо большого гемора нет при переходе на 2.0, как думаешь?

Добавлено: 02 фев 2007, 12:32
john_chek
Думаяю ты прав! Нужно страрые базы перешерстить :( !

Добавлено: 02 фев 2007, 12:47
WildSery
john_chek писал(а):Нужно страрые базы перешерстить :( !
Я делал просто - экспертом выгружал все метаданные в скрипт, а потом в 2-ке этим скриптом пытался создать базу.
Все ошибки какие были - как на ладони.