- ベストアンサー
accessVB メモリ不足でDiskでできないでしょうか
Dim A(1000,1000,1000) as Integer の配列が大きすぎてとれません こんな時、速度は犠牲にしてもやりたい時 ハ-ドディスク上でできないでしょうか できなければ、ハードディスク上にファイルを読み書き して操作する方法でもいいのですが なるべく苦労しないで、出来る、アイデアなんか 教えてください よろしくおねがいします
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは。 >Dim A(1000,1000,1000) as Integer なぜ、3次元なのですか?多次元構築するなら、Access は向かないと思います。手近なのは、OLAPキューブだと思いますから、OS をWin2003 にして、SQL サーバーを入れれば出来ると思います。 そのまま、Access で使うなら、1次元にして、3つにすればいのではないでしょうか? Dim A(1000) as Integer Dim B(1000) as Integer Dim C(1000) as Integer たぶん、そのひとつが、検索キーになるでしょうから、その後、添え字で、切り替えれば同じだと思います。
その他の回答 (1)
- ArukuMail
- ベストアンサー率22% (115/510)
配列は変数なので実質メモリー上に作られます。 互換をかんがみても莫大な配列は止めるべきでしょう。<開発と運用のPCスペックが違うことがたたあるので それでもだとすれば、ランダムアクセス方式のファイルにデータを読み書きし 抽出した結果を配列にいれればよいかとおもいます。
お礼
回答ありがとうございます ただ漠然と、こうした考え(莫大な配列)は 色々な場面でやっかいな問題に遭遇するのか みたいなことがわかりました とりあえず、はランダムアクセスで、 深みにはまらないように、やってみます ありがとうございました
お礼
回答ありがとうございました ACCESSは多次元にはむかないのですか (まあ、要素数が少なければ別でしょうが) なるほど、わかりました ありがとうございました