2種類のMDBがあり
一つは 毎日の入力にて使用、もう一つは 累積として使用している。
それぞれに 同一デザインのテーブルがあります。
毎日の入力用のMDB内ののテーブルのデータをすべて 二つ目のMDBのテーブルに 追加したいのですが
一件読み込んで 一件書き込むなどと プログラムしていましたが
毎日の入力用のMDBが たくさんになったため 処理が遅くてたいへんです。
なにか 簡単に かつ 高速にすることは可能でしょうか?
開発環境は VB6 SP6 WindowsXP ADOを使用しています。
よろしくお願いします。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
もう少し詳しい内容を説明頂けたら、色々な方法が提示できると思います。
推測で、お話させて頂きますね。
入力用のMDBがインターフェイスも兼ねていて
チェック項目があまりないのであれば、入力するMDB自体にリンクテーブルを
入れておき、入力時に集計用?MDBを更新してはどうですか?
VB6.0でアプリケーションを作っているのであれば、ローカルに入力用MDBを
設ける必要はあまりないように思います。
集計用MDBを共有し、排他処理を実装すればローカルMDBを更新する必要自体が
なくなるのではないでしょうか。
No.1
- 回答日時:
失礼ながら質問者様がどのくらいの技量があるのかがわかりません。
具体的な材料もないので・・・・
まず、ACCESSプログラマーの初心者がよくやるのは何でもかんでも ウイザードまかせ 出来上がったクエリー
の中身のSQL文の命令については見てもわからない。 巨大なクエリーになってしまう。
といった方が多いです、
これではいつまでも初心者はぬけだせません。
テーブルの項目の正規化(無駄な項目がないか、あちこちに同じ項目が存在するなど)
まずはSQLの適正化(どうすれば早いSQLになるか。 遅いSQL命令を実行しているか)
ストアド的な処理を VBプログラム側で行っていないか? クエリーに置き換えは可能か?
ループ処理で一件づつ読み込んでは書く処理など => 一括処理(クエリーにできないか?)
見直しが必要です。
もうひとつ ACCESS2000 など古いバージョンの場合は はっきり言って遅いです。
件数がある程度、多いことが見込めるのであれば いっそ SQL Server 2008 Express など 無料のDBにしたほうが
いいです。 一括処理(ストアド) トランザクションにも対応できますし・・・
VB6自体、バージョンが古く、今ではVB.net 系になっていますので プログラムを VB.NET 20xx に置き換えて
作成しなおしたほうが 手っ取り早いかもしれません。
とはいえ .NET系のプログラミングを習得するには少し自習しなければなりませんが。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(データベース) pythonでsqlight勉強中、クエリー結果の利用法教えて下さい 1 2022/04/28 20:38
- Ruby pandasでsqlite3にテーブル作成・追加・読み出しでindexの取り扱い方教えてください 5 2023/03/08 09:57
- Visual Basic(VBA) ExcelからAccessのテーブルに書き込む時に時間がかかる 1 2022/10/14 20:38
- Access(アクセス) access フォーム 大分類、小分類 1 2022/08/11 18:03
- Access(アクセス) Accessテーブルの結合で別々のテーブルのフィールドを組み合わせて値を出す方法について 2 2022/07/20 19:43
- Access(アクセス) Access 登録ボタンからサブフォームの更新 1 2022/07/22 10:23
- SQL Server DBのテーブルの設計ができず困っています。 2 2023/06/29 16:43
- Excel(エクセル) Excel ドロップダウンリスト(入力規則)に関してです データの入力規則で元データ79000行のド 3 2023/07/17 10:06
- その他(Microsoft Office) エクセルでテーブルの最終行が自動追加されない 1 2023/01/04 15:09
- Access(アクセス) AccessVBAで降順にするテーブル作成クエリを使用して作成したテーブルを削除し同一のテーブル作成 1 2023/01/06 11:17
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
DoEvents関数って何?
-
SQLの速度をあげるには・・・
-
ノットイコールを教えて下さい
-
Excelでのセル内容の高速消去方法
-
プログラム上のCPU稼働率低減に...
-
Excel VBA データ削除の高速化
-
絶対パスの取得について
-
VC++2010 GDIオブジェクトの解...
-
基本情報技術者試験詳しい方へ...
-
Excel VBAにて、2GB超の点群デ...
-
win10で、正確な待ち時間の作り方
-
減色処理について
-
エクセルVBAで教えて頂きたいの...
-
Timerを使用しての強制待機
-
小数点を含む数値かどうか判断...
-
If Not c Is Nothing Then ~延...
-
C言語 再帰処理のメリットとデ...
-
C#で書かれたプログラムをバッ...
-
ヒストグラム平滑化について
-
Excel(VBA)でSetTimer関数を使...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelでのセル内容の高速消去方法
-
DoEvents関数って何?
-
win10で、正確な待ち時間の作り方
-
小数点を含む数値かどうか判断...
-
SQLの速度をあげるには・・・
-
絶対パスの取得について
-
Excel VBAにて、2GB超の点群デ...
-
VBでの簡易電卓の作成(減算方...
-
C言語:関数を使うメリットとデ...
-
テキストファイルの空行をスキ...
-
プログラム上のCPU稼働率低減に...
-
Excel(VBA)でSetTimer関数を使...
-
ナップザック問題?をエクセル...
-
If Not c Is Nothing Then ~延...
-
プログラム 擬似コードとはどん...
-
基本情報技術者試験詳しい方へ...
-
ノットイコールを教えて下さい
-
符号付きにすべきか、符号なし...
-
C言語 時刻差分の算出方法
-
実行時のCPU使用率を増やしたい
おすすめ情報