- ベストアンサー
oracleで別のグローバルデータベースのテーブルからPL/SQLでデータをinsertする方法。
こんにちは。 別の場所に設置してあるoracleのデータベースからinsert文でデータを引っ張って来れないかと思っています。 ご存知の方いらっしゃれば宜しくお願い致します。 内容: ここのoracleです。 グローバルデータベース名:testa.ok.com (データベース名:testa) スキーマ名:output テーブル名:名称マスタ 項目内容:番号、名前 ユーザ名:tosi password:tosi あっちのoracleです。 グローバルデータベース名:testb.ok.com (データベース名:testb) スキーマ名:input テーブル名:名称マスタ 項目内容:番号、名前 ユーザ名:tosi password:tosi PL/SQLで出来ないものでしょうか? 宜しくお願い致します。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
こんにちわ。 データベースリンクを使用すれば可能です。 まず、あっちのデータベース (testb.ok.com) に接続 するための接続文字列をtnsnames.ora に定義します。 → sqlplus tosi/tosi@接続文字列 でtestb.ok.com に接続できる事を確認して下さい。 次にtesta.ok.com 側にデータベースリンクを作成します。 Create database link DBリンク名 connect tosi identified by tosi using '接続文字列'; → select ~ from input.名称マスタ@DBリンク名 where ~ で、データベースリンク経由でデータにアクセスできること を確認して下さい。 後は、SQL 文 (PL/SQL でも可) の中で Insert into 名称マスタ select * from input.名称マスタ@DBリンク名 where ~; とすれば、Ok です。
その他の回答 (1)
- taknt
- ベストアンサー率19% (1556/7783)
やったことは ないのですが、DBリンクをはれば、出来そうな気がします。
お礼
早速の回答、有り難う御座います。 DATABASELINKまでは出来ました。 ファイル名の指定で難儀していますが、 出来そうな感じがしています。
お礼
有り難う御座います。 ちょうどテーブル名称指定のところで難儀していました。 明日に再度チャレンジします。
補足
有難う御座います。 出来ました。 リンクがアクティイブにならなくて、ちょっと苦労しました・・・・。