记录列约束违规

时间:2017-10-17 15:28:14

标签: sql-server sql-server-2008

我们在一个非常大的表上有一个列约束,以确保没有插入或更新的数据可以记录零或以下的库存水平。有时,我们的应用程序报告错误,因为这些约束被违反。

如果发生约束违规,有没有办法将数据行写入表或日志文件?

1 个答案:

答案 0 :(得分:1)

最好的办法是在桌面上放置一个BEFORE INSERT,UPDATE触发器。

在触发器中,检查inserted表以查看是否有任何行违反约束,如果是,则将它们写入Log表而不是目标表。

然后将任何不违反约束的行写入目标表。