在 SQL Server 2005 中更改唯一键有什么影响
我有一个表一个主键 ID int 和 4 个字段的复合唯一键。但是由于我的项目的性质,复合键的键(字段)之一不断变化。
有没有人发现经常更改复合键字段有任何问题?
在 SQL Server 2005 中更改唯一键有什么影响
我有一个表一个主键 ID int 和 4 个字段的复合唯一键。但是由于我的项目的性质,复合键的键(字段)之一不断变化。
有没有人发现经常更改复合键字段有任何问题?
涉及维护,因为所有非集群键都指向集群键或如果您有堆则指向行(没有集群键的表)
由于集群键保存了表的所有数据(本质上是表),只要您对非集群键进行更改,集群键就会被更新,反之亦然
该指数需要进行一些重组。
这是 ACID 中 C 的一部分:当您的 UPDATE 完成时,一切都已完成并除尘。
此外,任何使用数据的索引视图也需要更新,同样是“C”的一部分。
如果它没有集群,那么这就是它。
我不会太担心它,除非它在一秒钟内发生很多次......
我肯定会添加一些代码来注意违反唯一约束的情况。你不应该遇到问题,但如果你经常改变它,我会说你冒更大的风险。