- ベストアンサー
Accessで2種類のデータベースを結合する方法
Accessで2種類のデータベースを結合する方法 AccessでMySQLとSQLServerというような2種類のデータベースをJOINしたSQLを使いたいと思います。 Access上でリンクしておいてクエリー定義すれば出来ることはわかっているのですが、高速化かつODBCの設定をしなくても済むように出来ればDAOを使って接続したいと思っています。 このような別データベースを結合するSQLは記述することは無理でしょうか? 又は別のリンクテーブルを使わなくても済む方法がありましたら、教えていただけると助かります。 Accessのバージョンは2007です。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
「高速化かつODBCの設定をしなくても済むように出来ればDAOを使って接続したい」 という要求じたい無理があると思います。 ODBCのDSNを設定せずに接続したいというのなら、 SELECT * FROM [odbc;Driver={SQL Server};Server=サーバー名;Uid=ユーザー名;Pwd=パスワード; Database=データベース;].[テーブル名] でアクセス可能ですが、リンクテーブルの方が高速かなあ。
その他の回答 (1)
- nda23
- ベストアンサー率54% (777/1415)
回答No.1
接続先が違うのに、どうやって同じ土俵に乗せようと いうのでしょう?Accessのリンクテーブルを使わない でやる方法はないと思いますよ。
質問者
お礼
有難うございます。 接続文字列を使ってやれないかなと思ったのですが、無理そうですね。
お礼
有難うございます。 接続文字列を使ってDAOで接続したほうがリンクより早いと理解していたのですが、違うのでしょうか? 2つの接続文字列を使ってSQLでJOINしてみましたが、駄目なようです。 エラーは出ませんが、DSNの設定ダイヤログが何度も出てきます。 主テーブルをDAOで接続してフィールドのコントロールソースに結合テーブルで書くのは明らかに遅そうなので素直にリンクすることにしようと思います。