Jac*_*ack 11 sql-server primary-key identity
我们可以声明一个Identitylikeid_num来id_num增加唯一的数字。
CREATE TABLE new_employees
(
id_num int IDENTITY(1,1),
fname varchar (20),
minit char(1),
lname varchar(30)
)
Run Code Online (Sandbox Code Playgroud)
是否建议将其Identity用作替代方案,Primary key因为Identity为每一行提供了唯一编号?
Ken*_*her 27
Identity columns并且Primary Keys是两个非常不同的东西。AnIdentity column提供一个自动递增的数字。这就是它所做的一切。将Primary Key(在SQL Server中至少)是一个独特的约束,保证唯一性和通常(但并不总是)聚集键。同样在 MS SQL Server 中,它也是一个索引(在某些 RDBMS 中,它们并没有那么紧密地联系在一起)。作为索引,它提供更快的查找等。经常Identity columns被用作Primary Key如果没有好处natural key存在,但不是替代品。
不,不是,因为身份并不能保证唯一值。可以绕过标识属性SET IDENTITY_INSERT <schema>.<table> ON(在 SQL Server 中 - 您没有指定正在使用的 RDBMS)。
主键约束(和唯一约束)使用唯一索引来强制唯一性。