我想使用存储过程来检查是否插入了状态。我知道我可以从设计表中获得约束,我只想在一个过程中完成它。
create procedure Service_Status(@service_status varchar(15))
AS
Begin
IF (NOT EXISTS(SELECT * FROM ServiceStatus WHERE
[status]=@service_status))
--Check ([status] in ('Pending','In-Progress','Closed'))
BEGIN
SELECT 'Status must be either Pending, In-Progress or Closed'
END
END
答案 0 :(得分:2)
如果你坚持程序,那么我认为你不能 - 你打算如何将该存储过程绑定到插入&更新活动?
您可以将检查代码封装在用户定义的函数中,但是您需要在约束中调用该函数(您似乎没有瞄准),您也可以创建一个触发器(可能不建议),但我真的不知道如何对插入/更新事件强制执行存储过程检查。