请问,创建表的这几个关键字,什么意思
CREATE TABLE Archive.dbo.Records
(
[Id] [uniqueidentifier] ROWGUIDCOL NOT NULL UNIQUE,
[SerialNumber] INTEGER UNIQUE,
[Chart] VARBINARY(MAX) FILESTREAM NULL
)
创建表,请问,红色字体的关键字,怎么解释?
[解决办法]
CREATE TABLE Archive.dbo.Records([Id] [uniqueidentifier] ROWGUIDCOL NOT NULL UNIQUE, --uniqueidentifier类型的rowguidcol列,并且唯一[SerialNumber] INTEGER UNIQUE, --integer类型的唯一性列[Chart] VARBINARY(MAX) FILESTREAM NULL)
[解决办法]
uniqueidentifier
未指定数据类型就是这个数据类型
UNIQUE 唯一
[解决办法]
参考
uniqueidentifier 类型 http://msdn.microsoft.com/zh-cn/library/ms190215(v=sql.105).aspx
unique 约束http://msdn.microsoft.com/zh-cn/library/ms191166(v=sql.105).aspx
create table 的定义http://msdn.microsoft.com/zh-cn/library/ms174979.aspx
[解决办法]
UNIQUE是唯一约束,就是这个列的值必须唯一,插入不唯一的值会报错。
INTEGER是INT的完整形式
uniqueidentifier是GUID类型,即这列是GUID类型,是个xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx形式的值,但是不保证唯一,直接DEFAULT NEWID().
ROWGUIDCOL你可以理解为uniqueidentifier列的别名
你
select ID
FROM Archive.dbo.Records 和 SELECT ROWGUIDCOL FROM Archive.dbo.Records是一样的。你可以搜一下ROWGUIDCOL 关键字。
[解决办法]
uniqueidentifier --数据类型,可存储16字节的二进制值
INTEGER --整型
UNIQUE 唯一约束
[解决办法]
http://msdn.microsoft.com/zh-cn/subscriptions/downloads/aa258255(v=sql.80).aspx
ROWGUIDCOL是列关键字
[解决办法]