我对SQL
很新,很抱歉这是非常基本的知识。我的问题如下。
我有一个名为组的表格,minimumVal
和maximumVal
是两列。 minimumVal
总是应该小于maximumVal
。我想在将新记录插入表之前检查这一点。如果此条件失败,则不应将数据插入数据库。
根据我的理解,我虽然有触发但不知道如何写这个。
这是我到目前为止写的;
CREATE TRIGGER tr_Group
ON Table_Group
for INSERT
AS
????
请告诉我。
答案 0 :(得分:15)
我建议您使用check constraints:
ALTER TABLE dbo.Table_Group ADD CONSTRAINT CK_Group
CHECK (minimumVal < maximumVal)
如果您仍想使用触发器,则需要INSTEAD OF
trigger:
CREATE TRIGGER tr_Group ON Table_Group
INSTEAD OF INSERT
AS
BEGIN
SET NOCOUNT ON
INSERT INTO dbo.Table_Group
SELECT *
FROM INSERTED
WHERE minimumVal < maximumVal
END