0

我在 SQL Server Compact 中将主键字段设置为自动增量和标识,当我向其中插入新记录时,我不填充标识值并将其传递为 null。但是在运行应用程序时出现此错误:

“SQL Server Compact 不支持服务器生成的键和服务器生成的值。”

4

2 回答 2

2

使用 SQL Compact 3.5,您必须使用 Guid 作为 ID,因为使用实体框架时不支持 int IDENTITY。但是,int 适用于 SQL Compact 4.0。

于 2013-07-13T07:10:32.320 回答
1

为避免此错误,您应该在插入时单独保留 ID 列。如果你有一个包含三列的表,你应该像这样插入:表声明:

CREATE TABLE Books 
(
   ID INT IDENTITY, 
   Name NVARCHAR(200), 
   PublishYear DATETIME
)

并像这样插入您的记录:

INSERT INTO Books (Name, PublishYear) 
VALUES (N'Boof-e koor', '1937-10-28 12:30:00.000')

同样,您不得在插入语句中提及 INDENTITY 列。

于 2013-07-13T06:06:41.553 回答