-1

私は次のようにデータベースTest内のローカルテーブルを持っている:挿入行の異なるデータベースやサーバは

CREATE TABLE [SavedData] 
(
    [RowID] INT NOT NULL , 
    [Category] INT NOT NULL , 
    [X] DATETIME NOT NULL, 
    [Y] DATETIME NOT NULL, 
    PRIMARY KEY ([RowID]) 
) 

私はGetData(INT category)のように別のサーバー上のリモート・データベースLiveDataの手順を持っています複数の行を返すRowID, X, Y

私のテーブルはローカルテスト用のデータをキャプチャするために使用されているので、私はこれをclunky CSVファイルや何かを経由するのではなく、1つのステップで行うことができますか?例えばCategoryEXEC GetData(Category)の結果は、いくつかのクロスDBクエリ/スクリプトを使用してSavedDataに挿入されます。

私は可能な限りDBクエリにVisual Studio 2013を使用しています。アプリケーションのコードではなく、ローカルのテストデータに手動でマイグレーションを行います。

具体的には、私はVSに2つのDB接続を持っている:

enter image description here

DB 'テスト' は私のlocaldbであるが、DB 'LiveDataは' SQL2014です。

+0

はい、可能ですが、実際に読み取るコードと書き込みコードはどこにありますか? – Steve

+0

@ Steve私はこの移行をコードからではなくローカルのテストデータに手動で設定しています。 (これをQに追加しました) –

答えて

2

はいプロシージャの結果と一致するテーブルがすでにあるので、これを非常に簡単に行うことができます。

insert SavedData 
(
    Category 
    , X 
    , Y 
) 
exec MyRemoteServer.DatabaseName.SchemaName.ProcedureName 
+0

この構文が機能しない場合、リモートDBをどのように修飾するかわかりません。自分の質問を更新しました。私の例に固有の答えを編集できますか? –

+0

このようにデータにリモートでアクセスするには、リンクサーバーを作成する必要があります。 https://msdn.microsoft.com/en-us/library/ms188279.aspx –

+0

それに遭遇していないかもしれません...おそらくあなたは答えの例を広げることができます。私はこれが明示的にコード化されたスクリプトで行われなければならないと仮定していますが、VSはGUIに優しい方法を提供していませんか?私はとにかくその間にそれを使って遊びます:) –

関連する問題