SQL Server - после триггера вставки - обновить другой столбец в той же таблице

У меня есть триггер базы данных:

CREATE TRIGGER setDescToUpper
ON part_numbers
 AFTER INSERT,UPDATE
AS
DECLARE @PnumPkid int, @PDesc nvarchar(128)

SET @PnumPkid = (SELECT pnum_pkid FROM inserted)
SET @PDesc = (SELECT UPPER(part_description) FROM inserted)

UPDATE part_numbers set part_description_upper = @PDesc WHERE pnum_pkid=@PnumPkid

GO

Это плохая идея? То есть обновить столбец в той же таблице. Я хочу, чтобы он запускался как для вставки, так и для обновления.

Работает, просто боюсь цикличности. Обновление внутри триггера запускает триггер снова и снова. Это будет?

Пожалуйста, не придирайтесь к прописным буквам. Безумная ситуация.

24
задан marc_s 17 March 2011 в 17:04
поделиться