Office ZERO

Excelのマクロ処理から、本格的なシステム開発まで、事務系のソフトのことなら何でもお任せ下さい。

06-6484-7610

Accessについて(その4)

2016/11/24日 12:54

AcccessでのSQL SERVERやolacleなどのデータの取り扱いの続きです。

 

基本、Accessにはテーブルリンクという機能があり、Access Jetだけではなく、SQL SERVERやlacle,MySQL

 

といったデータもプログラムの箱(dbやaccdb)リンクさせて、Access Jetと同じように取扱いができます。

 

しかし、この方法では、データ件数が多いと、Access Jetより処理時間が掛かる場合があります。

 

現実に、あるお客様で他システムとの連動のため、olacleをこの方法で使用していたのですが、データの登

 

録内容を全て空にするという処理を行った場合、時間が掛かり過ぎるとのクレームがついたことがあります。

 

通常、選択して削除するのであれば、プログラム作成方法によっては、時間が掛かることもありますが、

 

全てのデータを削除して空っぽにするという行為は、一瞬にして終わります。

 

不思議に思って計測したところ、4万件のデータを空にするのに5分、十万件だと10分、20万件だと30分弱

 

掛かってしまいました。(この計測値は過去のものなので、ハードの性能の向上した現在は、もう少し早いか

 

もしれません。)

 

同じデータ量でも、Access Jetだと、件数に係らず、瞬時にして終わります。

 

どうやら、外部データをリンクすると、mdb或いはaccdbの機能として、1件ずつ処理しているみたいです。

 

従って、大量のデータを取り扱うのにSQL SERVERやolacleを導入し、Accessにリンクを貼って使用するのは

 

、あまりお勧めできません。

 

それらのデータベースを、VBなどと同様の速度で処理するための方法は次回で延べます。

 

今回も、ここまで読んで下さった方々にお礼申し上げます。

 

ますます寒くなってきましたので、お身体にはお気をつけください。

 

ありがとうございました。