我的 ms-sql 表上是否需要标识列?
我有一个表,其中保存来自其他表的 id,并且默认情况下(就像我多年来的习惯一样),我在该存档表上创建了一个标识列作为主键。
现在我想重新播种它,以便该表使用不同的数字作为键,这些数字取自经常转储到其中的表。
我正在考虑将 Identity 属性从列中删除,并将值更新为新的编号方案。
我的设计明智吗?如果我使用另一个 int 键,我只是认为归档表上不需要标识。
I have a table that holds id's from other tables and by default (as I do from years of habit) I made an identity column as a primary key on this archive table.
Now I want to reseed it so that the table uses different numbers as keys, taken from the tables that are dumped into it every so often.
I'm thinking about taking the Identity property off the column and updating the values to my new numbering scheme.
Am I doing the right thing design wise? I just don't see a need for an identity on an archive table if I use another int key.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
在主键列上使用
identity
很方便。如果您有其他方法来维护主键,即使不是更好,也可以。Using an
identity
on a primary key column is convenient. If you have other ways of upholding a primary key that is ok if not even preferable.没关系。
我现在正在读 Joe Celko 的书
Sql for Smarties,高级 Sql 编程
他朝同一个方向前进,并投票反对他书中的身份栏(p.36ff)
That's ok.
I'm just now reading a book by Joe Celko's
Sql for Smarties, Advanced Sql Progrmming
He goes in the same direction and votes against identity columns in his book (p.36ff)