"OPENQUERY"を使用してMS SQL ServerからMySQLデータベースにレコードを挿入しようとしていますが、重複するキーメッセージを無視することを試みています。クエリが重複して実行されると、それを無視して続行します。MS SQL Serverの「INSERT IGNORE」とは何ですか?
重複を無視するためにどのようなアイデアがありますか? 「A.record_id」は、特定の基準にMS SQL Serverの」内のレコードにそれらのレコードを結合
- をMySQLを定義するには、「OPENQUERYを」使用してMySQLからレコードを引っ張っ:ここ
は私がやっているものですここからIDを直接入力するのではなく、SQL Serverに関連する新しい "B.new_id"レコード識別子があります。
- A.record_id、B.new_idのように、見つかった結果をMySQLの新しいテーブルに挿入したいのですが、ここで新しいテーブルにA.record_idがそのテーブルの主キーとして設定されています。
テーブルAをテーブルBに何度か結合すると、私が探している基準に一致する2つのレコードがテーブルBに見つかり、A.record_idの値が2+倍になりますそれを問題の原因となるテーブルAに挿入してください。注意集計関数を使用してレコードを削除することができます。
@MartinSmith。私はIGNORE_DUP_KEYを使用しようとしましたが、構文エラーが発生します。私はopenqueryで使用できるかどうかわかりません。ここに私の使用例INSERT IGNORE_DUP_KEY OPENQUERY – Jaylen
'IGNORE_DUP_KEY'はインデックスのプロパティです。クエリで使用するキーワードではありません。 SQL Serverに挿入する場合を除き、転送の方向を明確にする必要はありません。そのメモに感謝します。 –