プロが教える店舗&オフィスのセキュリティ対策術

リンクテーブルでtest.mdbとtest_be.mdbに分割した場合
エクセルからアクセスへADOでテ゛ータを追加する場合、
「test.mdb」と「test_be.mdb」のどちらに追加すればいいのでしょうか?
「test_be.mdb」はリンクテーブルとして「test.mdb」のテーブルのみ保存されています。

A 回答 (1件)

私自身はADOは使っていないので、誤解があるかもしれませんが・・・(汗)



> 「test.mdb」と「test_be.mdb」のどちらに追加すればいいのでしょうか?

「テーブルのインポート」ではなく、「既存のテーブルへのレコード追加」時に、
  a)バックエンド側(text_be.mdb)のテーブルに直接追加するべきか、
  b)フロントエンド側(test.mdb)のリンクテーブルを通して追加するべきか、
ということでよろしいでしょうか。

でしたら、処理速度の観点から、前者(バックエンドへの直接追加)とした方が
よいと思います。

リンクテーブルと、ADOではなくDAO(のはず)でのRecordSetによる処理とで
速度を比較した例ですが:
http://www.tsware.jp/labo/labo_15.htm


一方、処理速度よりも処理の簡便さを優先するなら、リンクテーブルを使用した
方がよい、ということになるかと思います。
(といっても、追加対象レコードの保存先が、test.mdb内のテーブルではなく
 Excelファイルということになると、(Excelファイルまでリンクテーブルに
 していれば別として)結局「追加クエリで処理」というわけにもいかないので、
 今回の件ではメリットにはならないかもしれませんが(汗))


なお、「テーブルのインポート」だった場合は、恐らくExcelのデータは
「何らかのマスタテーブルとなるデータ」というよりは、「既存のマスタ
テーブルの一括更新用データ」というのが一般的でしょうから、
フロントエンド側に取り込むのがよいかと思います。
(例えば「ネットワークにバックエンドを設置して複数ユーザーで共有」という
 場合、作業用の一時データとなるものまでバックエンドに保存すると、
 その分までネットワークを介して参照する必要が生じ、処理速度の低下を
 招くと推測されるため)
    • good
    • 0
この回答へのお礼

いろいろ調べてくださってありがとうございます!!!
よく読んでみます!

お礼日時:2009/04/14 23:52

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