【发布时间】:2017-05-17 13:01:43
【问题描述】:
我第一次使用 SQL 创建数据库,想知道唯一标识符数据类型是否与 MS Access 中的自动编号相同?如果不是,谁能告诉我如何让 SQL 自动为主键创建一个整数值?
【问题讨论】:
标签: sql sql-server ms-access
我第一次使用 SQL 创建数据库,想知道唯一标识符数据类型是否与 MS Access 中的自动编号相同?如果不是,谁能告诉我如何让 SQL 自动为主键创建一个整数值?
【问题讨论】:
标签: sql sql-server ms-access
唯一标识符是一个 16 字节的 GUID。表示为 32 个字符的十六进制字符串。
Int 是一个整数。
在 MS SQL 中创建一个以整数作为主键的表,如下所示:
CREATE TABLE TableName(
YourIDColumn INT PRIMARY KEY IDENTITY(1,1))
我冒昧地从 1 开始为您的身份密钥播种,并自动递增 1。请注意,这也是 SQL 中的默认设置,但为了清楚起见,我在此处指定了它。该语句还将在该列上创建一个主键(并通过代理一个聚集索引)。
【讨论】:
IDENTITY 关键字提供了自动增量功能。
uniqueidentifier 不是 32 个字符。这是一个 16 字节的 GUID。如果您将其转换 为字符串,则常规表示可能是 32 个十六进制数字。这不会使它成为这样的字符串。不要将 data 与 representations 混淆。
是的。在 Access 中,您必须使用自动编号或长。不是字符串。
然后,在设计窗口的下部窗格中,指定 Field Size:Replication-ID
现在该字段将拥有一个真正的 GUID。
【讨论】: