一般の方にとってデータベースとは、敷居が高く、理解しにくい様です。
当社が開催していますAccessでのシステム開発についての講座の中でもデータベースについて分かりやすく説明していますが、なかなか理解できる方が少ないようです。
データベースを使用する意味を理解できない方は、機能的にExcelで十分に間に合っていると考えている方が多い様で、 何のためにデータベースがあるのかが分からない様です。
Excelでも、データの順番を入れ替えたり、条件に従って抽出したりという事は出来ると思います。
カラムにフィルタをかけたり、ソート順をしている事によって実現可能な事はご存知の事かと思います。
では、レコードから単票を作成してみましょう。
Wordも使用すれば、差し込み印刷で単票の作成は容易です。
しかし、今月請求分の請求書だけを印刷となるとちょっと難しくなりますね。
Excelのリストにフィルタをかけて条件に合うデータを指定のフォーマットで一覧表を作成する場合、どうされますか?
また、データを入力しただけで、それが自動的に完成する様にしたい場合、どうしますか?
既にExcel活用テクニックの領域ですね。
それなりの手順で操作を行わないと出したいものが出てこないでしょう。
では、データが数十万行になっても同じような作業で出来ますでしょうか?
続いて得意先別商品別の売上データがExcelにあります。
得意先別月売上推移表をExcelで作成してみましょう。
これは、いくらか簡単に出来ると思います。
得意先名の項目を条件にしてsumifで集計を行えば容易に集計できます。
しかし、次月に新たなデータが追加された場合、sumifの範囲を指定しなおさなければなりませんね。
また、新たに得意先が増えた場合はどうでしょう。
Excelのシートに新しいsumifを作らなければなりません。
Excelで自動に計算はかなり難しいですね。データベースでは、上記で例に挙げたような事は容易に行えます。
これらExcelでは手動での再編集や操作を行わなければならない事をコンピュータが自動的に行ってくれるのがデータベースです。
データベース上でデータを保管する場所をテーブルと呼びます。
そのテーブルをSEやプログラマの新人に作らせてみると必ず全て文字列としてデータを保管するように作ってしまいます。
これは、Excelの使い方と全く変わりがありません。Excelの癖が抜けていないのでしょうか。
もしくは、データベースの概念を、まだ理解していないのでしょう。
データベースは、ただ単にデータの固まりと考えてください。並んでいる順番も保管した順番でしか並んでいません。
そのデータの固まりから必要なものを取り出し、見せるための画面や表、つまり、ヒューマンインターフェースにデータを渡す役割をします。
Excelは、そのデータを見せるためのヒューマンインターフェースでしかなく、データベースの機能は持っていないのです。
Excelとデータベースは、考え方、使われ方自体が異なるのです。