【发布时间】:2016-04-18 17:21:28
【问题描述】:
在 SQL Server 中通过创建如下标识列可以获得什么优势:
ID INT IDENTITY(9,0)
请注意,没有 NOT NULL、PRIMARY KEY 或 UNIQUE 约束或 UNIQUE 索引,因此这样做没有障碍。这不是为每个新列提供相同的种子编号并且从不增加它吗?目的是什么?
【问题讨论】:
-
这将在每条记录中放置相同的 int。 IMO,如果您需要这样做,那么您将错过一个更明显/正确的解决方案。仅仅因为你可以做
IDENTITY(X, 0)并不意味着你应该。 -
我知道。这就是为什么我试图弄清楚为什么有人在我刚刚继承的系统中的数据库(每个表中)中这样做。
-
除了这很奇怪之外,这很好地表明该表还有其他一些主要问题。没有表有主键听起来很痛苦。真是一场噩梦。
-
准备 3 个信封。 notboring.com/jokes/work/3.htm
-
检查代码并查看列是否被使用,如果是,它们是如何使用的。我想不出那样做一个身份的合理理由,但也许他们比我更聪明。虽然不太可能:P
标签: sql-server auto-increment identity-column