【ACCESS】DBを開く時の「メモリ不足です。」エラー原因と3つの対処法とは

2020年1月17日

Microsoft ACCESS 2013の利用している際に、データベースを開くときに「メモリ不足です。」のエラーが出て、全件数が表示がされないことや、または全テーブルに「?Name」という表示が出て、データが全く見られないことがあります。

こんなエラーが起こった場合の原因と対処法を解決していこうと思います。

 

メモリ不足のエラー表示

メモリー不足のエラーメッセージの表示は、下記のような事例があります。

メモリ不足のメッセージの表示もしくは、何度も開いたり、閉じたりしていると、項目に「?Name」という表示が出て、データが一切見られなくなります。

 

この場合、メモリ不足と聞くと、

・メモリがない

・PCのスペックが低い

 

等のように、物理的な問題と思われがちですが、これは間違えていますので、覚えておきましょう。

 

メモリ不足エラーの2つの原因とは

ACCESSのテーブルを開くと、「メモリ不足」のエラーが表示されます。

 

この場合のエラーには、主に2つの原因が考えられます。

<メモリ不足エラーの2つの原因>

・ACCESS自体のファイル容量が重たい

・ACCESSの1テーブルの容量が重たい

 

この2つがエラーの要因として考えられています。

もう一つの原因として、1つのテーブル自体が重たくてエラーが起こる場合があります。

 

ACCESS自体のファイルの容量が重たい場合

まずファイルそのものの容量が2G以上もしくは、それに近い容量がありませか?

もしそうであればただちに確認してみましょう。

ファイル容量が重たい場合には、このエラーが起こる可能性があります。その場合には、まず各テーブル等の容量の低減を行いましょう。

 

ACCESS内のテーブルの容量が重たい場合

ACCESSはファイルの容量の制限が行われていますが、それ以外にもテーブルごとにもてる容量も制限されているようです。

・この場合にテーブルのデータ容量を削減する必要性があります。

 

1テーブルに持てる目安容量の実証結果

ACCESSのデータテーブルに130項目を持った場合の、「メモリ不足」になった事例を一つご紹介しておきましょう。

下記画面をご覧ください。

★【130項目数をもったACCESSのテーブル】

 

項目数(列)  :130列

レコード数(行):約18000件

 

この画面は、130項目でフィールドの項目を設定したテーブルがあります。約18000件のデータレコードまでもつことができましたが、それ以上のレコードを増やして、テーブルを何度も開いたり閉じたりしていると、「メモリ不足」のエラーメッセージが表示されます。

また、ータ容量は、項目数を減らすことで、表示されるレコード数を増やせることがわかりました。

これによって、このメモリ不足のエラーメッセージは、「テーブルの表面積」によって、そのエラーがでること推測できます。

 

それ以上の項目をもつ場合、さらにデータ件数がもてなくなる可能性があるため、注意が必要です。

 

メモリ不足エラーの3つの対処法について

 

そこで、メモリ不足によるエラーの対処法を3つご紹介しておきましょう。

メモリ不足によるエラーの3つの対処法とは

●データベースの最適化

●項目数削減

●行数削減

 

まず一つ目の対処としては、データベースの最適化です。データベースの最適化は、「ファイルタブ」⇒「最適化」

というボタンがありますので、まずこちらを定期的に押して、ファイルの改善に努めましょう。ACCESSは非常に壊れやすいソフトですので、定期的なケアが必要不可欠です。

続いて、もう一つが、テーブルの項目数を確認しましょう。

非常に多くの項目をもっている場合には、これが、「メモリ不足」の影響を与えている可能性が高いです。不要な項目は削除して、容量を軽くしましょう。こうすることで、レコード数もさらに持つことができます。

 

また項目数を減らすことができない場合には、行数を減らして調整するようにしましょう。

 

ちなみに、私は、上記以外にも、

●PCのメモリ増設

●PC変更

メモリー増設とPC変更も試したのですが、解決には至りませんでした。

物理的な問題ではなく、Microsoft ACCESSそのものによって出される問題なので、物理的な対処は全く効果がありませんでした。

なので、ACCESS上で発生したエラーの場合、ACCESS側の問題と認識して、原因を分析することが大切です。

 

利用環境

利用環境は下記になります。

OS:Windows7

Microsoft Office: 2013

 

利用環境によってもエラーの現象や原因が異なることがありますので、バージョンが異なる場合は、参考にご利用下さい。

 

まとめ

このように、ACCESS上で表示される「メモリ不足」のエラーの原因は、PC本体やメモリの影響ではありません。

まずここを間違えないようにしましょう。

ACCESS自体やACCESSのテーブル等、ACCESS上で表示されるエラーは基本的にACCESSの問題が多いですので、対処の仕方を考えながら、原因を探ることが大切であるということを覚えておいてくださいね。