Accessの本当の凄さとは何か

記事
IT・テクノロジー
Accessで介護支援記録システムを作った理由-11

これまで長い間、介護支援記録を管理するデータベースシステムをAccessを使い開発することとした経緯等について語ってきましたが、このシリーズの最後として、別の視点から見たAccessの凄さにについて触れたいと思います。

Accessのアプリケーションとしての性格は、現状、小規模かつローカルな環境下で、高度なリレーショナルデータベースシステム(RDBMS)を開発し運用するためのソフトとして定義づけられると思います。
長年にわたりバージョンアップを重ねてきた結果、動作も安定しており、データベースを動かすスピードも高速です。しかも一ライセンス当たりの価格が安く、無料のランタイムも使えるなど、他のデータベースソフトよりもコスパの良さは抜きん出ています。
しかし、Excelに比べるととっつきにくく、マクロやVBAを使ったアプリの開発も初心者にとってハードルが高いため、様々な職場で広く普及することは妨げられてきたように思います。

視点を変えてみると、これは実に「勿体ない」の一言です。
企業が自らのオープン系システムの中に、情報通信会社に頼んでRDBMSを構築しようとする場合には、データベースを操作する言語としてSQLが一般的に使われています。
SQLは優れた言語で、RDBMS開発に欠かせないものであり、様々な仕様を持つデータベースの殆どがSQLに対応しています。
しかし、SQLはデータベースに対してしか命令できない言語のため、C言語など他のプログラミング言語の中に組み込んでシステム全体を開発しなければなりません。当然ながら、このような作業は両方に通じた専門的なプログラマーでなければできません。
また業務のワークフローをしっかり理解した上で開発しなくてはならないため、膨大な時間と手間を必要とします。コストに見合う開発は資金に余裕のある大企業しかできないでしょう。

ところが、Accessというソフトもデータベースを動かすため、実は内部的にSQLを使っています。
複数のテーブルから、抽出などを目的とするクエリと呼ばれるリストを作成しようとするとき、自動的にSQLが生成される仕組みとなっているのです。このことが意識されることは殆んどありません。SQLの知識は必要ないのです。
その上でフォームなどを組み合わせてアプリを開発しようする場合は、Access独特のマクロやVBAを使うことになりますが、VBAはプログラミング言語のため、やはり習得は必要となります。

ここまで書くと気づかれると思いますが、Accessを使うと通常の半分の努力でデータベースシステム(RDBMS)を構築することができるということです。
大規模なデータを大勢で扱うのではなく、小規模で、かつ少人数で扱う場合、情報通信会社に外注する余裕がないのであれば、少しAccessのマクロやVBAを学んで自前でRDBMSを開発するメリットは大いにあると思います。
また、普段Excelのデータベース機能を使って仕事をされている方も、扱うデータ件数やデータの項目数が増えてExcelに限界を感じたら、ぜひAccessを試してみるべきと思います。
つまりマクロやVBAを学ばなくても、まだまだAccessは大いに使えるソフトです。

やはり最後はマイクロソフト社の回し者みたいになってしまいました。
サービス数40万件のスキルマーケット、あなたにぴったりのサービスを探す