Excelファイルから同じ正確な列を持つ別のテーブルにインポートされた1つのテーブルのデータを挿入しようとしています。私は、すべてのデータエントリが存在しないかどうかを確認します
INSERT INTO [NQL_RawData].[dbo].[WM_MFGPNs]
([Manufacturer],[MPNWP],[MFGPN],[Cage],[Url],[DataSheetUrl],[Description],[Status],[NRND],[RoHS],[PbFree],[LOT],[LeadTime],[AddedOn],[AddedBy])
SELECT [Manufacturer],dbo.BuildPNWP([MFGPN],0),[MFGPN],[Cage],[Url],[DataSheetUrl],[Description],[Status],[NRND],[RoHS],[PbFree],[LOT],[LeadTime],[AddedOn],[AddedBy]
FROM [NQL_RawData].[dbo].[wm_BulkImport] WHERE Manufacturer = 'MFG NAME'
を挿入するために行くときには、PRIMARY KEY制約 'PK_MFGPNs_1' は、このエラーメッセージ
メッセージ2627、レベル14、状態1、行1 違反を思い付きます。オブジェクト 'dbo.WM_MFGPNs'に重複キーを挿入できません。 ステートメントが終了しました。
だから私は
INSERT INTO [NQL_RawData].[dbo].[WM_MFGPNs]
([Manufacturer],[MPNWP],[MFGPN],[Cage],[Url],[DataSheetUrl],[Description],[Status],[NRND],[RoHS],[PbFree],[LOT],[LeadTime],[AddedOn],[AddedBy])
SELECT [Manufacturer],dbo.BuildPNWP([MFGPN],0),[MFGPN],[Cage],[Url],[DataSheetUrl],[Description],[Status],[NRND],[RoHS],[PbFree],[LOT],[LeadTime],[AddedOn],[AddedBy]
FROM [NQL_RawData].[dbo].[wm_BulkImport]
WHERE NOT EXISTS(
SELECT [MFGPN]
FROM [NQL_RawData].[dbo].[WM_MFGPNs]
WHERE Manufacturer = 'MFG NAME'
)
をEXISTSしかし、私はまだ同じエラーメッセージは表示されませWHERE含まれるようにクエリを変更しました。何か案は?
PRIMARY KEYは何ですか?あなたの 'NOT EXISTS'は、' manufacturer'カラムをチェックするのではなく、キーが存在しないことをチェックしなければなりません... –