約25万件のデータを抽出(Query)をした場合に、
約23件のところで、EDBEngineErrorで「一時テーブルのリソース制限を超えます」のエラーがでて処理が中断します。
BDEAdministorater→NativeでPARADOXのBLOCK SIZE を変更したり、BLOB SIZE、BLOBS TO CACHEを変更したりと設定を変えてみたのですが回避できません。
「一時テーブルのリソース制限」は何に依存しているのでしょうか?
以前にも同様の質問があり、解決されていないようなのですが
ご存知の方いらしたらお知恵を拝借したいです。
Delphi6
BDE5.2
(1)メモリ上ではなく、一時テーブルを作成するタイプで抽出する方法なら、
うまくできるのでしょうか。。。
(2)一時テーブルが何に依存しているのか、わからないのですが、
Queryで抽出するのではなく、25万件のデータを1件づつプログラムで
判定して、条件にあったものを別テーブルに書き出す方法なら、処理が
できると思います。
#なんと泥臭い方法。。。
もしかしたら、作成される一時テーブルのサイズが大きすぎるのかもしれません。
ツイート | ![]() |