回答
是的。没有要求将IDENTITY
列作为主键。
CREATE TABLE T
(
X INT PRIMARY KEY,
Y INT IDENTITY(1,1)
)
尽管我不确定这是否有用。如果你有一个你想用作PK的自然键,那么你可能想要在代理替代键上设置一个唯一的约束。
为了设置FK关系,SQL Server不关心列是否是PK,它只需要一个唯一的索引就可以了。
这是一种简单的方法来记住记录添加到表中的顺序。 –
@拉里 - 当然是啊。没想到这一点。 –
@Larry,所以是一个默认(getdate())的CreatedDate,这更有意义 –
用IDENTITY关键字声明列,并且不要在其上创建PRIMARY KEY约束。
- 1. SQL Server将自动增加主键添加到现有表
- 2. Oracle DB - 没有序列的主键自动增量列
- 3. 自动递增列主键
- 4. 现有表中添加自动递增的主键 - SQL
- 5. 自动递增的主键连接表中的SQL Server
- 6. SQL Server中自动增量主键的上限
- 7. 在SQL Server CE中使用自动增量的主键错误
- 8. SQL Server数据库中的主键自动增量
- 9. MS SQL Server 2012的自动递增和主/外键
- 10. SQL - 没有标识种子或序列的主键自动增量
- 11. 无法主键/唯一键/自动递增加入此列
- 12. 是否有可能自动增加不是主键的列
- 13. 自动增加复合主键
- 14. SQL Server 2012主键自动增量跳过10.000
- 15. 如何自动增加SQL Server中构建的visual studio中的主键?
- 16. 自动增加主键(MySQL)的问题
- 17. 的SQLite自动增加非主键
- 18. 如何使SQL Server表的主键自动增加一些字符
- 19. 自动递增的SQL Server
- 20. 如何查找所有没有自动增量的主键
- 21. Int自动增量主键和GUID列
- 22. JPA自动增量非主键列
- 23. 如何使用nvarchar在sql server中添加自动增量主键?
- 24. oracle自动增加到主键
- 25. SQL Server:主键自动增量 - 删除的行和空闲键值是什么?
- 26. 如何自动增加JDBC中的主键sql
- 27. npoco.Insert <T>表上没有失败自动增量主键
- 28. 添加自动递增在SQL Server 2005
- 29. SQL Server:分别自动增加字段
- 30. SQL Server CE自动增加问题
当然 - 该列只需要声明为“INT IDENTITY”(或BIGINT) - 就是这一切。没有要求它成为主键 - 没有任何... –
什么限制你从......试图? –
@adrian:......请不要在您的生产系统上使用! :-) –