如何在rowguid列中输入值?

时间:2010-04-12 19:14:08

标签: sql sql-server tsql guid ssms

任何人都可以告诉我在表的rowguid列中插入值的正确方法吗?我正在使用sql server management studio

5 个答案:

答案 0 :(得分:6)

使用NEWID()函数生成一个:

CREATE TABLE myTable(GuidCol uniqueidentifier
                    ,NumCol int)
INSERT INTO myTable Values(NEWID(), 4)
SELECT * FROM myTable

或者您可以将其设置为默认值:

CREATE TABLE myTable(GuidCol uniqueidentifier DEFAULT NEWSEQUENTIALID()
                    ,NumCol int)
INSERT INTO myTable (NumCol) Values(4)
SELECT * FROM myTable

答案 1 :(得分:3)

您可以在表

中将NEWSEQUENTIALID()设置为默认值
CREATE TABLE GuidTable
(
ID UNIQUEIDENTIFIER DEFAULT NEWSEQUENTIALID() PRIMARY KEY,
TEST INT
)

在这里阅读更多相关信息

http://msdn.microsoft.com/en-us/library/ms189786.aspx

答案 2 :(得分:2)

这是一个uniqueidentifier

您可以发送类似“6F9619FF-8B86-D011-B42D-00C04FC964FF”的值,或使用NEWID / NEWSEQUENTIALID函数生成一个

答案 3 :(得分:1)

我可以使用以下内容插入:

插入表FOO(Col1,Col2,RowGuidCol)

值(5,'你好,'1A49243F-1B57-5848-AA62-E4704544BB34')

将短划线放在正确的位置非常重要。您不需要在字符串的开头有0x。对于rowguid col属性设置的列,不允许使用FYI-Updates。我希望这会有所帮助。

答案 4 :(得分:0)

假设您的表 t 中有一个uniqueidentifier列 rg ,它被设置为rowguid:

INSERT INTO TABLE t (rg) VALUES (NEWID())

INSERT INTO TABLE t (rg) VALUES (NEWSEQUENTIALID())