重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

初めまして。Accessを使ってAccessのmdbを作成、使用している者です。
 会社で「ORACLEのDBもAccessから更新できるそうだから、そのデータの更新用画面等を作って」と言われ、準備をしているところです。
 「裏技」本等を見て、ODBCドライバをAccessを使用するコンピュータへ導入し、リンクテーブル機能を使用すればORACLEのDBへアクセス可能なのは文章上で確認しました。が、その後の操作性が気になっています。
 Accessで通常行っているクエリやフォーム、マクロの作成・実行方法は、ORACLEのDBが対象になっても全然変わらないのでしょうか?SQL文を一から作成しなければいけない、ということにはならないでしょうか?
 単純に「対象テーブルがORACLEになるだけで、Access上の操作性は変わらないらしいよ」と会社の人には言われたのですが、その情報元が不明なのと、実際その方が担当する訳ではないので本当にそうなのか不安です。
 ちなみに、ORACLEのDBはデータ準備中で、まだAccessでどうなるかと確認出来ていません。

質問の仕方が下手で申し訳ありませんが、どなたかお返事を頂けたら助かります。宜しくお願いします。

A 回答 (3件)

会社の方がいってる様にそんなに意識しないでいいとおもいます。


まず、Accsessのテーブルは同じで物なのですが、ODBCを使って外部リンクでOracleのテーブルをAccessに取込みます。
ここで、Oracleのテーブルリストから必要なテーブルを選択するとAccsessのテーブルが出来ます。
テーブルを選択する事とプライマリを選択くらいです。
(当然、OracleとAcsessは同じレイアウトです)

この回答への補足

mebunさん、お返事ありがとうございます。

ということは、自動的に作成されたAccessのテーブルにOracleDBのレコードがコピーされるという事が、リンクテーブル設定の意味なのですね。てっきりリンクテーブルはOracleのデータを直接更新したりするものだと思っていました。

そうすると、一度Accessテーブルに取り込んだレコードに対して更新・削除・新規追加をした場合、そのAccessテーブルを最終的に保存する時点で、OracleDBに変更内容が一括に反映されるのでしょうか?改めてExport機能等を使用したりする必要はないですか?

mebunさんのアドバイスを良く理解できていなかったらすみません…。お返事頂けたら助かります。

補足日時:2006/06/09 11:32
    • good
    • 0

Access2000にOracle7.3を外部リンクして使用しています。


ほとんど場合、問題なく動作していますが、追加クエリーでデータが追加できていないことがありました。
今は、処理終了後に必ず「CommitTrans」をし、oracleにデータを反映させるようにしています。

 この現象は、追加クエリーを実行しリンクしているテーブルを確認すると確かにデータは追加されているのにAccessを閉じてから再度開くとデータは追加できていなかったというものです。追加できるときもあればできないときもありました。そのようなときは「CommitTrans」で解決できます。
    • good
    • 0

少し説明不足でした。


外部リンクは常に有効です。Accessのテーブルに対する更新は自動的にOracleへ更新されます。
ただし、Oracleユーザの権限によっては、参照のみと
なります。
Accessで外部データからの取込みを選ぶとインポートと外部リンクが選択できます。
インポートとはmdbへ取込むだけで、データはmdbで更新されます。
外部リンクはmdbへの更新を外部(Oracle)へリンクされるということになります。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す