2016-06-21 6 views
-2

SSISを使用してテーブルに新しい行を挿入しようとしましたが、ID列のためにエラーが発生し続けます。私はSSISのID列

SET IDENTITY_INSERT TableName OFF 

と呼んでいますが、まだテーブルに新しい行を入れることはできません。

ここに私がSSISから得たすべてのエラーコードがあります。

[OLE DB Destination [205]] Error: SSIS Error Code DTS_E_OLEDBERROR. An OLE DB error has occurred. Error code: 0x80004005.
An OLE DB record is available. Source: "Microsoft SQL Server Native Client 11.0" Hresult: 0x80004005 Description: "The statement has been terminated.". An OLE DB record is available. Source: "Microsoft SQL Server Native Client 11.0" Hresult: 0x80004005 Description: "Cannot insert the value NULL into column 'IDEM_ID', table 'Person_DW.dbo.IDEM_Dim'; column does not allow nulls. INSERT fails.".

[IDEM_STG [14]] Error: The attempt to add a row to the Data Flow task buffer failed with error code 0xC0047020.

+3

特定の値を 'IDENTITY'カラムに挿入する場合は、' SET IDENTITY_INSERT TableName ** ON ** 'を使用する必要があります。この**は、特定の値を 'Identity'カラムに挿入する機能を有効にします。実行した直後に** OFF **にすることを忘れないでください。 –

+2

アイデンティティを持つカラムにデータを挿入するしかし、悪い考えです。 – Shyju

+0

エラーメッセージは明らかです - 'NULLを値 'IDEM_ID'に挿入できません。私は真剣にNULL IDを挿入したいと思っています。おそらく* ID列を省略して、テーブルにIDを割り当てさせたいのですか?次に、*省略*する - ソースクエリには含めないで、ターゲットにマップしない –

答えて

0

は、あなたの答えをありがとう、実際に私は価値を自分自身を挿入したくない、私はそれ自動インクリメントしたい、テーブル)がID列でそれのどこかで1.5メートルの行の周りに持っていただき、ありがとうございます