我已经创建了一个触发器,但它不能像我想要的那样工作。例如,我想确保order_limits字段应该在1-10之间,并且它应该与插入和更新一起应用。但是我不知道如何使它与更新和插入一起工作。有人能帮助我吗?谢谢
CREATE TRIGGER trRestrictRange
ON DATABASE
FOR ALTER_TABLE
AS
BEGIN
ALTER TABLE Order
ADD CONSTRAINT const_range CHECK (order_limits >=1 AND order_limits <= 10 );
END
1条答案
按热度按时间polhcujo1#
如果您“必须”使用触发器(没有“必须”使用触发器的充分理由),则需要使用DML触发器,而不是DDL触发器,并检查
inserted
伪表中的数据。然后,如果表中存在数据,THROW
将显示错误:当然,正如我所说的,这样做并没有什么好的理由,相反,您应该使用
CHECK
CONSTRAINT
: