Форум: "Базы";
Текущий архив: 2004.06.06;
Скачать: [xml.tar.bz2];
ВнизTrigger Найти похожие ветки
← →
ss300 © (2004-05-17 07:09) [0]дарова мастера..
есть табличка Registr
поля
status и status_str
как написать тирггер чтобы при инсерте в поле status
выполнялся вот такое услови
если status=1 то status_str = "один"
........................ два
и т.д.
заранее благодарен
← →
ss300 © (2004-05-17 07:10) [1]это не работает! на NEW ругается, почему? - ф.з.
CREATE TRIGGER REGISTR_DOC_AI0 FOR REGISTR_DOC
ACTIVE AFTER INSERT POSITION 0
AS
begin
/* Trigger text */
IF NEW.status = "1" THEN
BEGIN
UPDATE registr_doc SET STATUS_STR = "один" where NUMBERDOC = NEW.numberdoc;
END
end
← →
Mike Kouzmine © (2004-05-17 07:14) [2]А ты почитай где NEW доступно. Может в бефоре, а не афтер?
← →
ss300 © (2004-05-17 07:16) [3]пробовал.. но эта падла не перестает ругаться:)
← →
Mike Kouzmine © (2004-05-17 07:17) [4]Врешь. Ничего ты не пробовал или не то пробовал.
← →
ss300 © (2004-05-17 07:21) [5]слушай, чувак а может изначально что то надо присвоить в переменную NEW.status ?
← →
Sergey13 © (2004-05-17 08:16) [6]2ss300 ©
А может повежливее надо?
Вместо своего UPDATE сделай просто NEW.STATUS_STR = "один" и тригер не афтер а бифоре.
← →
Andriano (2004-05-17 08:26) [7]И дополню:
изначально такое решение - хранить "один" напротив 1, "два" напротив 2 и т.д. - неверно. Для этого есть ВСЕ средства на клиенте.
← →
ss300 © (2004-05-17 08:58) [8]я оказ-ся скобку забыл в IF (...)
спасибо что откликнулись
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2004.06.06;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.035 c