0

データベースから別のデータベースにデータを移行するための迅速で汚いソリューションを作成する必要があります。これは、概念実証としてのみ使用されています。長期的には、.NETの同期フレームワークを使用します。

データベースは同一です。このソリューションは、OCA(場合によっては接続されるアプリケーション)として使用されます。

  • XMLから移行したいテーブルを読みました。
  • 各テーブルのターゲットに対するすべての制約を無効にします。
  • テーブルごとに、データを移行する必要があります。ソースからDataTableを作成します。
  • ターゲットを指すDataTableを作成します。
  • ソースからターゲットにすべての行をインポートし、それらを挿入します
  • ターゲットテーブルのすべての制約を再度有効にします。

上記が可能かどうかはわかりません。私はそれのほとんどを機能させ、ソースDataTableのクローンを作成していました。次に、複製されたDataTableがどこも指していないという問題が発生しました。

  • ターゲットに向けて挿入できますか?
  • これを行うためのより良い方法はありますか?
  • 別の方法は、メタデータを使用してID列を識別し、列名に含めないINSERTINTOステートメントを作成することです。
4

3 に答える 3

3

あなたが提案していることはうまくいくはずです。ただし、 SqlBulkCopyクラスを使用すると、より簡単に(そして確実にパフォーマンスが向上する)見つけることができます。

(これはコードに焦点を合わせたソリューションです)

于 2009-12-23T08:42:36.153 に答える
1

簡単な答え:DataTable別のを使用して、をロードして別のデータベースに保存できますDataAdapter

ただし、コードレスアプローチの場合は、ここで説明するようにSQLServerデータベース公開ツールキットを使用できます。

于 2009-12-23T08:35:22.410 に答える
1

SQL Serverのインポートおよびエクスポートウィザード(dtswizard.exe)を使用できます。Integration Servicesパッケージが作成され、いつでも保存して実行できます。

于 2009-12-23T08:41:47.417 に答える