
初めまして。Accessを使ってAccessのmdbを作成、使用している者です。
会社で「ORACLEのDBもAccessから更新できるそうだから、そのデータの更新用画面等を作って」と言われ、準備をしているところです。
「裏技」本等を見て、ODBCドライバをAccessを使用するコンピュータへ導入し、リンクテーブル機能を使用すればORACLEのDBへアクセス可能なのは文章上で確認しました。が、その後の操作性が気になっています。
Accessで通常行っているクエリやフォーム、マクロの作成・実行方法は、ORACLEのDBが対象になっても全然変わらないのでしょうか?SQL文を一から作成しなければいけない、ということにはならないでしょうか?
単純に「対象テーブルがORACLEになるだけで、Access上の操作性は変わらないらしいよ」と会社の人には言われたのですが、その情報元が不明なのと、実際その方が担当する訳ではないので本当にそうなのか不安です。
ちなみに、ORACLEのDBはデータ準備中で、まだAccessでどうなるかと確認出来ていません。
質問の仕方が下手で申し訳ありませんが、どなたかお返事を頂けたら助かります。宜しくお願いします。
No.1ベストアンサー
- 回答日時:
会社の方がいってる様にそんなに意識しないでいいとおもいます。
まず、Accsessのテーブルは同じで物なのですが、ODBCを使って外部リンクでOracleのテーブルをAccessに取込みます。
ここで、Oracleのテーブルリストから必要なテーブルを選択するとAccsessのテーブルが出来ます。
テーブルを選択する事とプライマリを選択くらいです。
(当然、OracleとAcsessは同じレイアウトです)
この回答への補足
mebunさん、お返事ありがとうございます。
ということは、自動的に作成されたAccessのテーブルにOracleDBのレコードがコピーされるという事が、リンクテーブル設定の意味なのですね。てっきりリンクテーブルはOracleのデータを直接更新したりするものだと思っていました。
そうすると、一度Accessテーブルに取り込んだレコードに対して更新・削除・新規追加をした場合、そのAccessテーブルを最終的に保存する時点で、OracleDBに変更内容が一括に反映されるのでしょうか?改めてExport機能等を使用したりする必要はないですか?
mebunさんのアドバイスを良く理解できていなかったらすみません…。お返事頂けたら助かります。
No.3
- 回答日時:
Access2000にOracle7.3を外部リンクして使用しています。
ほとんど場合、問題なく動作していますが、追加クエリーでデータが追加できていないことがありました。
今は、処理終了後に必ず「CommitTrans」をし、oracleにデータを反映させるようにしています。
この現象は、追加クエリーを実行しリンクしているテーブルを確認すると確かにデータは追加されているのにAccessを閉じてから再度開くとデータは追加できていなかったというものです。追加できるときもあればできないときもありました。そのようなときは「CommitTrans」で解決できます。
No.2
- 回答日時:
少し説明不足でした。
外部リンクは常に有効です。Accessのテーブルに対する更新は自動的にOracleへ更新されます。
ただし、Oracleユーザの権限によっては、参照のみと
なります。
Accessで外部データからの取込みを選ぶとインポートと外部リンクが選択できます。
インポートとはmdbへ取込むだけで、データはmdbで更新されます。
外部リンクはmdbへの更新を外部(Oracle)へリンクされるということになります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エラーを起こす方法
-
truncate tableを使って複数の...
-
既にテーブルが存在する場合の...
-
オラクルのUPDATEで複数テーブル
-
データ削除とSQL*Loaderでのイ...
-
ora-01722のエラーについて
-
[materialized]マテリアライズ...
-
AccessでOracleDBを扱う場合の...
-
【SQL】他テーブルに含まれる値...
-
フラグをたてるってどういうこ...
-
SELECT INTOで一度に複数の変数...
-
改行を含んだデータのインポート
-
UPDATEで既存のレコードに文字...
-
PRIMARY KEYのコピー
-
PostgreSQLのtimestamp型で時間...
-
SQLサーバに対するSQL文で抽出...
-
1つのSQLで2段階の抽出を行い...
-
追加クエリで重複データなしで...
-
Accessの構成をコピーしたい
-
sqlに記述できない文字
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エラーを起こす方法
-
truncate tableを使って複数の...
-
オラクルのUPDATEで複数テーブル
-
既にテーブルが存在する場合の...
-
データ削除とSQL*Loaderでのイ...
-
accessのデータをoracleへinser...
-
テーブル定義書(Oracle) 【IX】...
-
複数レコードの複数フィールド...
-
AccessからOracle DB(View)を...
-
CASEでBETWEEN制約
-
任意のテーブルをdrop tableしたい
-
Oracle[10g]のSQL文について。(...
-
テーブルに変更があったらCSV出力
-
Oracleによるリンクテーブルで...
-
Where句のNot条件をAnd条件にし...
-
oracle ora-02298
-
ora-01722のエラーについて
-
複数テーブルにある個別フィー...
-
Oracle[10g]のSQL文について(新...
-
テーブルDROPできないのです。。。
おすすめ情報