みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

異なるDB(Oracl と MySQL)の結合は可能でしょうか?

JavaというかDBに関しての質問です。

仕事で元々 Access で作られていたアプリをWebアプリで作り直す事になりました。
元々の Access バージョンでは、
外部の Oracl への「リンクテーブル」を設け mdb のテーブルと結合させて
データを表示するというような事をしています。

この度作成するWebアプリ版(Java)では、
元々の mdb のデータを新たに建てる MySQL へインポートし
外部の Oracl と MySQL のテーブルを結合しデータを読込み画面へ表示するというような事を実現したいです。

そもそも異なるDBを結合する事は可能なのでしょうか?
同期の問題があるので出来ればどちらかのDBにもう一方のDBのデータをコピーするというような事は避けたいです。

なお私の方で既に試した方法としてそれぞれのDB(テーブル)をJDBCで別々に読込んでクエリの結果セットをモデル化したJavaのオブジェクトに格納し
その後、結合の条件を指定しマッピングするという実装を試してみましたがマッピングに非常に時間がかかり使い物になりませんでした。
※やはりSQLには遠く及ばなそうです。

MySQL で Access のリンクテーブルのような便利機能はあるのでしょうか?
Oracl はお客様が管理されており手を加えることが出来ません。

またデータベース側で出来ないとなればアプリ(Java)側で何とかしないとなりませんが
Java で良い解決策はありますでしょうか?

まとまりの無い質問となってしまいましたがどうぞ宜しくお願いします。

投稿日時 - 2010-03-08 18:35:13

QNo.5735628

困ってます

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

「MySQL Connector/ODBC」というものがあります。
DB間の接続にはODBCを利用するのが簡単です。
名の通ったDBであれば対応するODBCドライバーも提供されているものと思います。
http://dev.mysql.com/doc/refman/5.1/ja/myodbc-connector.html

 また「黒猫 SQL Studio」も応用できるかもしれません。
http://kuronekosoft.ewinds.net/

投稿日時 - 2010-03-08 19:02:05

お礼

貴重な情報ありがとうございます。

「黒猫 SQL Studio」このアプリは初めて知りました。
便利そうですね!

「MySQL Connector/ODBC」というものがあるんですね。
AccessのリンクテーブルもODBC経由なのでmdbとの結合が可能なんでしょうね。
いろいろ調べてみます。問題解決に繋がるかもしれません。

ありがとうございました。

投稿日時 - 2010-03-09 16:57:27

ANo.1

このQ&Aは役に立ちましたか?

2人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

Oracleからであれば、データベースリンクを使えばできたような気がします。
逆に、SQLServerからも同様の機能(リンクサーバー?)があると思います。
下記を参照してみてください。
http://q.hatena.ne.jp/1162546828

投稿日時 - 2010-03-08 19:14:40

お礼

貴重な情報をありがとうございます。

SQLServerは余り触ったことがありませんでしたが、
やはり有名どこのRDBにはODBC経由のリンク機能があるんですね。
MySQLにも「MySQL Connector/ODBC」というものがあるそうです。

設定時(リンク時)にエラーとかが出そうな匂いがしますが
調査して試してみたいと思います。

ありがとうございました。

投稿日時 - 2010-03-09 17:01:20

あなたにオススメの質問