0

一連のテーブルをあるデータソースから別のデータソースに移動する必要があります。私たちのホスティング会社はデータベース間で共有パスワードを提供していないため、それを処理するための SQL スクリプトを書くことができません。

最良の選択肢は、それを処理する小さな coldfusion スクリプトを記述することです。

通常、私は次のようなことをします: SELECT * INTO database.table FROM database.table

これに関する唯一の問題は、cfquery では同じクエリで 2 つのデータソースを使用できないことです。

2番目のデータソースを使用するように指示することはできませんが、dbTypeを「クエリ」にすることはできないため、QoQも使用できないと思います。

これを実現するための賢明な方法を考えられる人はいますか? または、最初のクエリの各行をループして、2 番目のクエリに個別に追加する唯一のオプションですか?

それに関する私の問題は、それにはもっと時間がかかるということです。移動するテーブルがたくさんあります。

4

4 に答える 4

5

わかりましたので、データベース間でパスワードを共有していませんが、個々のデータベースごとにパスワードを持っているようです (データソースが設定されているため)。では、データベース 1 からデータベース 2 へのリンク サーバー定義を作成できますか? ユーザー資格情報はリンク サーバーに対して保存できるため、ソース DB と同じである必要はありません。セットアップが完了すると、2 つの DB 間で確実にデータを移動できます。

これを常に使用して、ライブデータベースからテスト環境にデータを同期しています。これがうまくいく場合は、より具体的なSQLを提供できます。

于 2012-05-10T02:19:32.777 に答える
3

2 つのデータベースにアクセスできますが、同じクエリで 2 つのデータソースにアクセスすることはできません。

于 2012-05-10T00:44:08.223 に答える
3

私は数年前に、まさにこの種のことのために「DataSynch」と呼ばれるものを書きました。

http://www.bryantwebconsulting.com/blog/index.cfm/2006/9/20/database_synchronization

これを機能させるために必要なものはすべて、私の無料の「com.sebtools」パッケージに含まれています: http://sebtools.riaforge.org/

私は実際にこれを数年間使用していませんが、まだ機能しない理由は考えられません.

于 2012-05-10T02:42:38.510 に答える
0

ヘンリー - なぜこれを行うのですか? SQLマネージャーを使用して、「データのインポート」機能を使用して選択したテーブルを移動しないのはなぜですか? (dBを右クリックして「インポート」を選択します。次に、ネイティブクライアントと「他の」データベースの権限を使用してテーブルを指定します。SQLマネージャーは両方のDBにアクセスする必要がありますが、dbサーバー自体は必要ありません相互にアクセスできます。マネージャー スタジオはパイプとして機能します。

于 2012-05-10T02:41:23.420 に答える