数据库设计 – 触发器vs约束的性能注意事项
发布时间:2020-12-12 16:08:59 所属栏目:MsSql教程 来源:网络整理
导读:我试图找出我是否应该在我的数据库内的触发器或约束中使用业务关键逻辑. 到目前为止,我已经在触发器中添加了逻辑,因为它可以控制下一步会发生什么,意味着我可以提供自定义用户消息,而不是可能会混淆用户的错误. 使用约束超过触发器有什么明显的性能增益,以及
我试图找出我是否应该在我的数据库内的触发器或约束中使用业务关键逻辑.
到目前为止,我已经在触发器中添加了逻辑,因为它可以控制下一步会发生什么,意味着我可以提供自定义用户消息,而不是可能会混淆用户的错误. 使用约束超过触发器有什么明显的性能增益,以及确定使用哪些方法的最佳做法是什么? 解决方法约束双手!>使用约束条件指定关系原则,即关于数据的事实.除非某些事实发生变化(即新的要求),否则您将永远不需要更改约束条件. 为了更好地解释自己的一个比喻:编写SQL查询的正确方法是指定“你想要什么”,而不是“如何获得” – 让RDBMS找出最好的方式为您做.同样适用于这种情况:如果您使用触发器,您必须牢记执行顺序,级联等各种各样的事情.如果可能,让SQL为您做限制. 这并不是说触发器没有用处.他们这样做:有时你不能使用约束来指定一些关于你的数据的事实.这是非常罕见的.如果它发生在你身上,那么模式可能有一些问题. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |