2

データ移行をしなければなりません。

そのためには、列の ID を無効にする必要があります。データを追加した後、SQL Server 2008 の同じ列に対してその ID を再度有効にする必要があります。

誰かがその方法を説明できますか、または同じタスクを実行する他の方法はありますか?

4

2 に答える 2

3

SET IDENTITY_INSERT( http://msdn.microsoft.com/en-us/library/ms188059.aspx )を使用します。

SET IDENTITY_INSERT TableName ON;

-- Insert Data.

SET IDENTITY_INSERT TableName OFF;
于 2013-06-06T12:41:49.667 に答える
3

INSERT通常のステートメントを使用して移行を行っている場合は、 IDENTITY_INSERT*を使用できます。

SET IDENTITY_INSERT abc ON

INSERT INTO abc (/* Columns */) VALUES
(/* Values */)

SET IDENTITY_INSERT abc OFF

を使用している場合はBULK INSERTKEEPIDENTITYオプションが必要です。

SSIS OLE DB Destinationを使用している場合は、Keep Identity オプションを使用する必要があります。

SQL Server インポートおよびエクスポート ウィザードを使用している場合、ウィザードの[ソース テーブルとビューの選択]ページで適切なシート/テーブルを選択したらEdit Mappings...、オプションを選択してチェックマークを付けEnable identity insertます。


*多くの人は、このオプションの名前が紛らわしいと感じています。これは、システムに何をすべきかを伝えていると想定しているためです。「ID 値を挿入してください」-代わりに、「ID 値を挿入します」という意味です。そのため、インサートの前にオンにし、後でオフにするのではなく、その逆にするのです。

于 2013-06-06T12:43:25.737 に答える