1
MS SQLにデータをバルクロードします。このように効率的に行うために、私は一時的にFK制約をテーブル上で無効にしています(1つのテーブル8制約はすべてカスケード削除 "Set NULL"を削除しています)。制約チェックを再度有効にする前に、無効な外部キーをチェックしてNULLに設定する必要があります。バルクロード後に無効なFKデータを削除します
この目標を達成するにはどうすればよいですか?ありがとう。
MS SQLにデータをバルクロードします。このように効率的に行うために、私は一時的にFK制約をテーブル上で無効にしています(1つのテーブル8制約はすべてカスケード削除 "Set NULL"を削除しています)。制約チェックを再度有効にする前に、無効な外部キーをチェックしてNULLに設定する必要があります。バルクロード後に無効なFKデータを削除します
この目標を達成するにはどうすればよいですか?ありがとう。
UPDATE MyMainTable
SET TableAID = CASE WHEN TableA.ID IS NULL THEN NULL ELSE TableAID END,
TableBID = CASE WHEN TableB.ID IS NULL THEN NULL ELSE TableBID END,
FROM MyMainTable
LEFT JOIN TableA ON MyMainTable.TableAID = TableA.ID
LEFT JOIN TableB ON MyMainTable.TableBID = TableB.ID
素晴らしい作品です。 – Daniel