• ベストアンサー

Accessで2種類のデータベースを結合する方法

Accessで2種類のデータベースを結合する方法 AccessでMySQLとSQLServerというような2種類のデータベースをJOINしたSQLを使いたいと思います。 Access上でリンクしておいてクエリー定義すれば出来ることはわかっているのですが、高速化かつODBCの設定をしなくても済むように出来ればDAOを使って接続したいと思っています。 このような別データベースを結合するSQLは記述することは無理でしょうか? 又は別のリンクテーブルを使わなくても済む方法がありましたら、教えていただけると助かります。 Accessのバージョンは2007です。

質問者が選んだベストアンサー

  • ベストアンサー
  • nora1962
  • ベストアンサー率60% (431/717)
回答No.2

「高速化かつODBCの設定をしなくても済むように出来ればDAOを使って接続したい」 という要求じたい無理があると思います。 ODBCのDSNを設定せずに接続したいというのなら、 SELECT * FROM [odbc;Driver={SQL Server};Server=サーバー名;Uid=ユーザー名;Pwd=パスワード; Database=データベース;].[テーブル名] でアクセス可能ですが、リンクテーブルの方が高速かなあ。

tmz400
質問者

お礼

有難うございます。 接続文字列を使ってDAOで接続したほうがリンクより早いと理解していたのですが、違うのでしょうか? 2つの接続文字列を使ってSQLでJOINしてみましたが、駄目なようです。 エラーは出ませんが、DSNの設定ダイヤログが何度も出てきます。 主テーブルをDAOで接続してフィールドのコントロールソースに結合テーブルで書くのは明らかに遅そうなので素直にリンクすることにしようと思います。

その他の回答 (1)

  • nda23
  • ベストアンサー率54% (777/1415)
回答No.1

接続先が違うのに、どうやって同じ土俵に乗せようと いうのでしょう?Accessのリンクテーブルを使わない でやる方法はないと思いますよ。

tmz400
質問者

お礼

有難うございます。 接続文字列を使ってやれないかなと思ったのですが、無理そうですね。

関連するQ&A