- ベストアンサー
エクセルからアクセスへADO 「_be.mdb」に追加するべき?
リンクテーブルでtest.mdbとtest_be.mdbに分割した場合 エクセルからアクセスへADOでテ゛ータを追加する場合、 「test.mdb」と「test_be.mdb」のどちらに追加すればいいのでしょうか? 「test_be.mdb」はリンクテーブルとして「test.mdb」のテーブルのみ保存されています。
- みんなの回答 (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のデータは 「何らかのマスタテーブルとなるデータ」というよりは、「既存のマスタ テーブルの一括更新用データ」というのが一般的でしょうから、 フロントエンド側に取り込むのがよいかと思います。 (例えば「ネットワークにバックエンドを設置して複数ユーザーで共有」という 場合、作業用の一時データとなるものまでバックエンドに保存すると、 その分までネットワークを介して参照する必要が生じ、処理速度の低下を 招くと推測されるため)
お礼
いろいろ調べてくださってありがとうございます!!! よく読んでみます!