2009-08-11 18 views
0

私は多くのデータベースで作業したいと思っています。私のプロジェクトにはいくつかあり、いくつかは外部にあります。私のアプリケーションは、外部データベース(リモートマシンにあるもの)からデータを転送し、私の一時データベースにipとユーザーの資格情報を知っています。私は自分のデータベースにそのデータベースのテーブルを作成したいと思います。これを行う最善の方法は何ですか?私はASP.NET 3.5で作業します。 WCFやWebサービスのような推奨事項はありますか?リモートデータベースからローカルデータベースへのデータ転送に最適なアプローチ

答えて

2

あなたは自分自身にいくつかの質問に答えることがあります。

  1. は、ソースのスキーマ、安定した データベースをターゲットに?
  2. 同期中にダウンタイムが発生する可能性はありますか?
  3. データと構造またはデータのみを転送しますか?
  4. どのくらいの頻度で同期が必要ですか? (1日に1回または常に最近のデータ)

答えはこの質問に依存しますが、SMOと"Transfer" taskを使用する簡単な解決策はありません。

 Server srv = default(Server); 
    srv = new Server(); 
    //Reference the AdventureWorks database 
    Database db = default(Database); 
    db = srv.Databases("AdventureWorks"); 
    //Create a new database that is to be destination database. 
    Database dbCopy = default(Database); 
    dbCopy = new Database(srv, "AdventureWorksCopy"); 
    dbCopy.Create(); 
    //Define a Transfer object and set the required options and properties. 
    Transfer xfr = default(Transfer); 
    xfr = new Transfer(db); 
    xfr.CopyAllTables = true; 
    xfr.Options.WithDependencies = true; 
    xfr.Options.ContinueScriptingOnError = true; 
    xfr.DestinationDatabase = "AdventureWorksCopy"; 
    xfr.DestinationServer = srv.Name; 
    xfr.DestinationLoginSecure = true; 
    xfr.CopySchema = true; 
    //Script the transfer. Alternatively perform immediate data transfer 
    // with TransferData method. 
    xfr.ScriptTransfer(); 
0

実際には使用していませんが、このタイプのシナリオを念頭に置いてMicrosoft Sync Frameworkが作成されたと思います。

0

あなたはデータベースreplicationについて読んでみたいと思っていますか?

私はリチャード&クリスが言ったことについて詳しく説明します
2

-

レプリケーションコピーのための技術 のセットですと 別のデータベースからのデータと データベースオブジェクトを配布し、その後に データベース間の同期一貫性を維持する。 レプリケーションを使用すると、ダイヤルアップ接続 、ワイヤレス接続、および インターネットを、別の場所にローカルおよび ワイドエリアネットワーク上で リモートまたはモバイルユーザーに データを配信することができます。

トランザクションレプリケーションでは、通常、サーバー間のシナリオなど、高いスループットを必要と 、 で使用 です:向上スケーラビリティと可用性 を。データウェアハウスおよび レポート。複数のサイトのデータを統合します。 異種データを統合する。 ;バッチ処理のオフロード 。マージレプリケーションは、モバイル アプリケーションまたは分散サーバ 可能なデータを持つアプリケーション が主に設計された です。一般的なシナリオには以下が含まれます。 モバイルユーザーとデータを交換する。 消費者POS(POS) アプリケーション;および複数のサイトからのデータの統合 スナップショット レプリケーションは、トランザクションと マージレプリケーションの初期データセットをに提供するために使用されます。データの完全なリフレッシュが の場合は、 を使用することもできます。これら3種類の レプリケーションでは、SQL Serverは 企業向けに のデータを同期するための強力で柔軟なシステムを提供します。レプリケーションに加えて

は、SQL Server 2008の に、あなたは ADO.NET用Microsoft Sync Framework and Sync Servicesを使用して データベースをsychronizeすることができます。 Sync Services for ADO.NET は、直感的で柔軟なAPI を提供し、 というオフラインおよびコラボレーションの対象となるアプリケーションを構築することができます。 シナリオ

関連する問題