Проверка значений на UPDATE в INSTEAD триггере MSSQL
уважаемые
Есть таблица условно [table] с строковым полем [field]. Как написать триггер INSTEAD UPDATE, который бы 1. проверял, является ли оно нулл ИЛИ в есть ли в нём проблемы 2. Если да, то дропал ошибку и НЕ вносил данные 3. Если нет, то заносил данные
Надеюсь, смог объяснить, Спасибо!
Ответы (1 шт):
Автор решения: Scrappy Coco
→ Ссылка
Мне кажется, вам нужно использовать CHECK:
CREATE TABLE T (
MyField NVARCHAR(100),
CONSTRAINT chk_T_MyField CHECK (MyField IS NOT NULL AND MyField NOT LIKE N'% %')
);
Таким образом, следующие INSERT'ы выдадут ошибки:
INSERT INTO T (MyField) VALUES ('Hello World');
INSERT INTO T (MyField) VALUES (NULL)
А это завершится удачей:
INSERT INTO T (MyField) VALUES ('Hello_World')