0

データベース内の 1 つのテーブルの変更を監視し、それらを別のデータベース内のテーブルに複製する必要があります。何らかの理由で、元のデータベースの構造を変更できないため、トリガーを使用したり、制約を作成したりできません。変更追跡は、必要なものに対する理想的なソリューションのように見えましたが、一部のテーブルには主キーがありません定義されているため、使用できません。変更データ キャプチャについては、こちら - http://msdn.microsoft.com/en-us/library/bb522511.aspxに次のように書かれています。

.

「ネット トラッキングを有効にするには、ソース テーブルに主キーまたは一意のインデックスが必要です。」

基本的に、同様の問題があるようです。

このような状況の回避策はありますか? それとも、何かが足りないのでしょうか?

4

1 に答える 1

2

いいえ。主キーを持たせます。とにかく1つあります。それが機能しない場合-申し訳ありませんが、主キーがないと、どのテーブルが実際に変更されたかはわかりません。マクドナルドでハンバーガーを提供するために、その設定をした人は誰でもむち打ちをして、小さな「INeedaJob」の広告を書いてもらう必要があります。彼は明らかにデータベース設計に失敗しました。

現在の唯一の選択は、すべての同期で完全なデータ比較を行うことです。楽しむ。回避策はありません。このテクノロジーには主キーを定義する必要があります。トリガーなどを使用できない場合は、「選択」とコード側のデータ比較(速度が遅くなります)が唯一の選択肢です。

于 2013-01-05T14:15:03.123 に答える