QA@IT

【DB】mysqlとoracleのテーブルを参照したい

8314 PV

いつも参考にしております。

今回、既存のシステム(DB:oracle9i)と連動する新システム(DB:mysql5.5)をaspで構築します。

質問ですが、1つのselect文でmysqlのテーブルとoracleのテーブルを結合して参照することは可能でしょうか。
実現方法をご存じのかた、申し訳ありませんが、ご教授いただけないでしょうか。

なお、旧システムOSはwin2kSvr、新システムOSはwin2008Svrです。

<例>
■ Aテーブル(oracle9i)
 コード | 氏名
--------+-------
 1001 | いぬ
 1002 | さる
 1003 | きじ
■ Bテーブル(mysql5.5)
 コード | 備考
--------+-------
 1001 | 桃太郎の家来1
 1002 | 桃太郎の家来2
 1003 | 桃太郎の家来3
↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
■ 想定しているSQL
SELECT
 Aテーブル.コード,
 Aテーブル.名称,
 Bテーブル.備考
FROM
 Aテーブル
LEFT JOIN Bテーブル ON
 Aテーブル.コード = Bテーブル.コード;
■ SQL実行結果
 コード | 氏名 | 備考
--------+-------+-------
 1001 | いぬ | 桃太郎の家来1
 1002 | さる | 桃太郎の家来2
 1003 | きじ | 桃太郎の家来3

以上です。

回答

doyaboh様、ご回答ありがとうございました。

oracleからmysqlを参照したい場合、oracle側にデータリンクを張れば実現可能ですが、逆にmysqlからoracleを参照したい場合、mysql側にデータリンクを張って同一db内で両方を参照することは可能でしょうか。

今回、oracleの環境を変えることができないので、mysqlでの実現方法を模索中です。

可能であれば実現方法をご教授いただければ幸いです。

以上です。

編集 履歴 (0)
  • 申し訳ありませんが、お役に立てなさそうです。
    https://forums.oracle.com/forums/thread.jspa?threadID=495950
    では、MySQL → oracleのfederated tableを作れそうなことが書いてありますが、このMetaLink No.で検索すると、11g for Windowsでは使えないと書いてありました。
    -
  • 反応が遅くなり大変申し訳ありません。

    やはりmysqlからoracleのデータリンクはできないのですね。。。

    レスポンスに不安が残りますが、mdbを用意してmdb内にデータリンクをはり、select文ではそのmdbを参照するようにします。

    ご教授ありがとうございました。
    -
ウォッチ

この質問への回答やコメントをメールでお知らせします。