我继承了一个在几个存储过程中使用@@IDENTITY
的SQL Server 2008系统。我读过的所有内容都应该被SCOPE_IDENTITY()
取代。
然而,该系统目前稳定且功能正常,我有点担心进入并进行全面更改,因为“我读到它在网上更好”。
我已经验证数据库没有触发器(sysobjects where type = 'tr'
)并且服务器的最大并行度设置为0.所以我的答案是,使用{{1}是否存在任何危险在这种情况下?显然,如果其中任何一个发生了变化,那么我们可能会遇到问题,但如果当前设置是安全的,那么我可以相应地优先考虑。
答案 0 :(得分:0)
如果你能保证未来的事情不会发生变化 - 这就是风险 - 没有危险 - 在你离开公司之后可能会出现问题,这将是非常困难的找你是否不知道你在找什么。
我无法预测风险对您有多大影响 - 或许至少您可以/应该在存储过程中留下一些评论,其中@@ Identity用作对出现的人员的警告在你之后。
就个人而言,如果可以的话,我会咬紧牙关并更新我的代码。