
Access2000(Windows)でBtrieveデータベースからODBCをつかって、
DoCmd.TransferDatabase acImport, "ODBC", "ODBC;DSN=Btrieve", acTable,
"BtrieveTable名", "AccessTable名", False
で、インポートすると1つのテーブルだけでレコード数が135,000程度、ファイルサイズが30MB程度(最適化直後)になってしまいます。時間も(マシンやネットワークの環境によりますが)10分近くかかってしまいます。
実際このテーブルの中で必要なレコード数は500程度なので、まるまるインポートし
ないで必要なだけにして、時間とファイルサイズを稼ぎたいのですが、何か方法があるのでしょうか?
いったんリンクしてから SELECT INTO や INSERT INTO すれば10秒もかからないでできます。
しかし、BtrieveTable名が毎月変わっていくので、お手上げ状態になり、上の方法を思いついたのです。
もしもこんな条件でリンクの設定ができればベストなのですが、ODBCソフトがメラント社のDatadirectというものでVBAからの設定が可能なのかどうかもわかりません。
よろしくご教授願います。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
下の回答を書いた者です。
下記の通り、「メラント社のDatadirect」については
分からないんですが、、、
ホームページやドキュメント類はご覧になりましたでしょうか?
ホームページでは手動でリンクを張る方法を説明していましたが
「データの更新を行う時には」メッセージが出るようです。
(リンクテーブルを削除してみても無理ですかね?)
出さなくする方法もあるような気がするんですが、知識も
検証環境も無いですし、これ以上の技術的コメントは
私からは、、、中途半端ですみません。
参考URL:http://www.merant.co.jp/datadirect/technote/odbc …
No.1
- 回答日時:
DoCmd.TransferDatabase acImport,,,(省略)
の「acImport」を「acLink」にしてリンクをはり、その後で
SELECTやINSERTをすれば良いのでは?
「メラント社のDatadirect」については分かりません。
ご回答ありがとうございました。
早速試してみました。
ご指導いただいた方法では、LINKが作成される前にDataDirectの"固有レコード識別子の選択"ボックスが表示されて、一旦停止してしまいます。
ここでOKをクリックすればLINKが作成されるのですが、それはそれで仕方がないのでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) Access DAOのExecuteメソッドのオプション(RecordsetOptionEnum)に 1 2022/09/19 07:34
- Excel(エクセル) EXCELの外部データ取得ができない 1 2023/03/23 09:03
- Access(アクセス) access,vbaでフォルダ内のファイルをテーブルにインポート、ファイル名もフィールドに追加したい 1 2022/08/31 11:11
- Visual Basic(VBA) ExcelからAccessのテーブルに書き込む時に時間がかかる 1 2022/10/14 20:38
- その他(データベース) 更新クエリをリンクデータベーステーブルに実行し実行時エラー3362固有インデックスに重複する値が含ま 1 2022/09/21 11:44
- MySQL 次の時間帯の勝率の合計を求めるSQL文 1 2023/07/04 17:12
- PHP クエリObjectをforeachで回す時に、次のレコードへ移動せずに次のレコードを取得したい 2 2022/07/28 15:29
- Access(アクセス) accessについて(超初心者です) 1 2023/02/11 11:18
- MySQL [1000地域 × 10カテゴリー = 1万件のテーブル]!グループ化? 1 2023/06/14 23:56
- その他(ゲーム) 至急お願いします! プレステ4のウイイレ2021やっていますがあのいわゆる神データを持っていてUSB 1 2022/04/29 15:06
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
3つ以上のテーブルをUNIONする...
-
Access 削除クエリが重い
-
ACCESSのBookmarkプロパティの...
-
Accessにインポートしたら並び...
-
データの二重表示の原因
-
Access 1レコードずつcsvで出力...
-
2つの項目が重複するレコード...
-
SQLデータ修正時に『このレコー...
-
Accessで重複したデータを一件...
-
Access VBA Me.Requery レコー...
-
Accessの固有レコード識別子の選択
-
テーブルのレコード削除ができ...
-
パススルークエリの使い方
-
フォームで1レコード削除したの...
-
ACCESS【更新クエリの中断がで...
-
ACCESS 『DoCmd.OutputTo』に...
-
SQLServerで同一条件レコードの...
-
数百万件レコードのdelete
-
Access カレントレコードがあり...
-
ManagementStudioからのデータ削除
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
3つ以上のテーブルをUNIONする...
-
Accessにインポートしたら並び...
-
データの二重表示の原因
-
Access 1レコードずつcsvで出力...
-
数百万件レコードのdelete
-
ACCESSのBookmarkプロパティの...
-
テーブルのレコード削除ができ...
-
ManagementStudioからのデータ削除
-
Access VBA Me.Requery レコー...
-
Access 削除クエリが重い
-
非連結サブフォームのレコード...
-
SQLデータ修正時に『このレコー...
-
レコードロックする方法
-
(ACCESS)並び替えをしないで...
-
Accessの固有レコード識別子の選択
-
SQLServerで同一条件レコードの...
-
Accessで重複したデータを一件...
-
Accessでの排他制御
-
Accessでレコードが更新された...
-
Access カレントレコードがあり...
おすすめ情報