問題タブ [azure-data-factory-2]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mysql - Azure MSSQL から Azure MySQL にデータをコピーするための Azure パイプライン コピー データ アクティビティ
Azure Pipeline の Copy Data アクティビティが MySQL をシンクとしてサポートしていないことは承知しています。しかし、他のコンポーネントを介してそうするための回避策はありますか?
sql-server - コピー アクティビティからプレコピー スクリプトを使用して、ソースからの変更追跡テーブルに基づいてシンク内のレコードを削除する方法を教えてください。
変更追跡を使用して、SQL Server から Azure SQL データベースにデータを増分コピーしようとしています。Microsoft Azure ドキュメントのチュートリアルに従いましたが、これを多数のテーブルに実装するときに問題が発生しました。
コピー アクティビティのソース部分では、最後の変更追跡バージョン以降に更新、挿入、または削除されたすべてのレコードの変更テーブルを提供するクエリを使用できます。このテーブルは次のようになります
PersonID がこのテーブルの主キーです。
問題は、コピー アクティビティがデータを Azure SQL データベースに追加することしかできないため、レコードが更新されると、重複する主キーが原因でエラーが発生することです。Azure SQL Database 上のテーブルにデータをマージするストアド プロシージャをコピー アクティビティに使用させることで、この問題に対処できますが、問題はテーブルの数が多いことです。
プレコピー スクリプトを使用して、Azure SQL データベースで削除および更新されたレコードを削除したいのですが、その方法がわかりません。コピーするテーブルごとに個別のストアド プロシージャと対応するテーブル タイプを作成する必要がありますか? または、コピー前スクリプトで変更追跡テーブルに基づいてレコードを削除する方法はありますか?