データベースとは?RDBMSってなに?SQLって?

データベースのイメージ

さて、EXCELの関数を学んできて、次のステップ(大量のデータを効率的に扱う)に必要不可欠なデータベースについてご説明していきます。

データベースと聞いてどのようなものを想像しますか?
サーバがいっぱいあって良くわからないプログラムがいっぱい動いてる。。。
みたいなイメージはありませんか?

間違ってはいませんが、もっと簡単に考えて大丈夫ですので ご安心ください。

簡単に言うとEXCELでも例えられます。
関数の時にも少し触れましたが、EXCELのブックをデータベース本体EXCELのシートはテーブルEXCELの列はカラムという風に例えることができます。
※データベース本体はデータベースを構築するとき以外はあまり意識しなくて大丈夫です。

では順を追って説明していきますね。

データベースの種類について(ACCESS、Oracle、MySQL、PostgreSQL)

そもそもデータベースには階層型、ネットワーク型、リレーショナル型などの大きな種類の違いがあります。
しかし、一般的にはリレーショナル型のデータベースRDBMS(Relational DataBase Management System)が一般的ですので、このリレーショナルデータベースを中心にご説明します。

さて、RDBMSといってもソフトウエアが大きく分けて2種類あります。

①単体で稼働でき、サーバを必要としない
 ACCESS
②基本的にはサーバを用意して大量のデータを扱うことを目的とする
 Oracle、MySQL、PostgreSQL

また、データベースにはSQL(Structured Query Language)はデータベースから特定のデータを取り出したり、更新したりするのに利用するプログラミング言語のひとつで簡単な構文から成り立ちます。
このSQLは上記の①でも②でも基本的な考え方は同じですのでこちらも順を追ってご説明します。

★Tips★ACCESSとOracleやMySQLなどどっちがいいの

扱うデータの種類にもよりますが、省力化に特化する場合はACCESSをお勧めします。
Webなどどちらにしてもサーバを利用しなければならないもの、数百万レコード(行)など大量のデータを扱うものはOracle、MySQL、PostgreSQLなどのサーバ型を利用することをお勧めします。
ただし、後者はデータベース設計など少し高度な知識が必要になるのと、サーバ上で稼働するのでlinuxなどのサーバ知識も必要になりますので、やはりイニシャルコストがかかります。
まずはACCESSで始めてデータ量が多くなってきた、Webと連携する必要が出てきたという場合には弊社にご相談ください。

SQLとは?

SQL(Structured Query Language)はデータベースから特定のデータを取り出したり、更新したりするのに利用するプログラミング言語のひとつと言いましたが、どのようなものなのでしょうか?

まず、コマンドの種類について大きく分けて4つあります。

■データ検索
 データベースからデータを検索します
 これが一番利用するコマンドで、以下のコマンドがあります。
  検索:SELECT 列(カラム)名 FROM テーブル名 WHERE 抽出条件

■データ操作
 テーブルに対して行を追加、更新、削除を行うコマンドで以下のコマンドがあります。
  追加:INSERT  INTO  テーブル名  VALUES ( ’値1’, ’値2’, …)
  更新:UPDATE テーブル名 SET カラム名=○○ WHERE 更新条件
  削除:DELETE FROM テーブル名 WHERE 削除条件

■データ定義
 テーブル自体を作成、変更、削除、また、アクセス権の付与、削除を行います。
  作成:CREATE TABLE テーブル名 列名 列のデータ型  …
  変更:ALTER TABLE テーブル名 実行コマンド(ADDやMODIFYなど)
  削除:DROP TABLE テーブル名 (オプション)
  テーブル名の変更:RENAME TABLE 変更前テーブル名 TO 変更後テーブル名
  ユーザー権限の付与:GRANT 権限1, 権限2、… ON テーブル名 TO ユーザID (オプション)
  ユーザー権限の削除:REVOKE 権限1, 権限2、… ON テーブル名 TO ユーザID

■トランザクション制御
 データ更新などの確定、やりなおしなどを行います。
  更新や追加の確定:COMMIT
  更新や追加の取消:ROLLBACK
  ROLLBACKするポイントの設定:SAVEPOINT セーブポイント名

他にもTRANCATE TABLEというコマンドや、PL/SQLと呼ばれるプログラミング言語などなど色々ありますが、代表的なものをご紹介しました。

★Tips★いっぱいあって良く分からないと思われる方へ4つだけ覚えておきましょう!

SQLにはデータベースを操作する様々なコマンドやオプションが用意されていますが、アプリケーションを操作する上で必要なコマンドはそう多くありません。
もちろん知っているに越したことは無いですが、少ない時間でいかに基本的な操作ができるかという事に重点を置き、以下の4つのコマンドに対して説明を行っていきます。
検索:SELECT 列(カラム)名 FROM テーブル名 WHERE 抽出条件
追加:INSERT  INTO  テーブル名  VALUES ( ’値1’, ’値2’, …)
更新:UPDATE テーブル名 SET カラム名=○○ WHERE 更新条件
削除:DELETE FROM テーブル名 WHERE 削除条件

今回はデータベースってどんなもの?種類は?使い方は?という基本的な内容についてご説明しました。
文字ばかりで分かり辛かったかもしれませんが、基本的な用語の解説と思って頭の片隅に置いておいてください。

次回は実際に使用する4つのコマンドSELECT、INSERT、UPDATE、DELETEについて説明していきます。

では、次回をお楽しみに。