将GUID作为主键时插入语句

时间:2012-08-02 12:54:54

标签: c# sql insert sql-server-ce guid

当我有GUID字段时,是否可以使用INSERT语句在SQL CE中插入行。

在C#中,我使用

ID = Guid.NewGuid()

但是在SQL控制台中,我找不到关键字来执行此操作。

我发现了这一个:

> Insert into Customer (ID, Name) values ('f5c7181e-e117-4a98-bc06-733638a3a264','MyCustomer')

如果要插入大量行,该怎么办?

4 个答案:

答案 0 :(得分:5)

尝试在Sql server中使用Newid()来生成GUID

答案 1 :(得分:1)

你不能使用NEWID()函数吗?

答案 2 :(得分:1)

要在字段上添加GUID,您可以将列的默认值设置为NEWSEQUENTIALID()。所以,例如:

CREATE TABLE tableName (
    Guid UNIQUEIDENTIFIER DEFAULT NEWSEQUENTIALID(),
    Name VARCHAR(100)
);

然后通过执行以下查询插入表:

INSERT INTO tableName (Name) VALUES ('Test');

我不确定CE是否支持NEWSEQUENTIALID(),因为我从未使用CE进行开发。

答案 3 :(得分:0)

在C#中,GUID是小写的,所以如果你希望它们看起来相似,请在SQL中使用LOWER(NEWID())