0

SQL Server Compact で主キー フィールドを自動インクリメントと ID として設定しました。新しいレコードを挿入するときに、ID 値を入力せず、null として渡します。しかし、アプリケーションを実行すると、次のエラーが発生します。

「サーバーで生成されたキーとサーバーで生成された値は、SQL Server Compact ではサポートされていません。」

4

2 に答える 2

2

SQL Compact 3.5 では、Entity Framework を使用する場合は int IDENTITY がサポートされないため、ID として Guid を使用する必要があります。ただし、int は SQL Compact 4.0 で動作します。

于 2013-07-13T07:10:32.320 に答える
1

このエラーを回避するには、挿入の ID 列をそのままにしておく必要があります。3 つの COLUMN を持つ TABLE がある場合は、次のように挿入を行う必要があります: TABLE 宣言:

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 に答える