[英]Triggers - with SQL Server
如何创建在更新或插入之前运行的触发器,并检查新行是否具有特定条件?
假设列A的值大于5
谢谢。
假设列A的值大于5
它应该在表列而不是TRIGGER
上使用CHECK
约束来完成,例如:
CREATE TABLE [dbo].[SalesHistory](
(...)
[A] [int] NULL CHECK (A > 5)
)
您可以使用INSTEAD OF触发器
简单的例子:
CREATE TRIGGER iu_trigger ON [dbo].[SalesHistory]
INSTEAD OF INSERT, UPDATE
AS
BEGIN
IF EXISTS (
SELECT 1
FROM inserted
WHERE A > 5
)
BEGIN
PRINT 'A > 5'
END
ELSE
BEGIN
PRINT 'A <= 5'
END
END
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.