本記事はデータベース入門記事のうち第1回「データベースとは」です。
本記事は以下の書籍を参考に執筆しています。
その他のデータベースの入門記事ついては以下の記事をご確認ください。
- 【データベース入門1】データベースとは ←今ここ
- 【データベース入門2】SQL コマンドとは、SQL 文の一覧
- 【データベース入門3】トランザクションと ACID 特性とは
- 【データベース入門4】バックアップ・クラスター・レプリケーション
- 【データベース入門5】テーブル設計・正規化
- 【データベース入門6】オプティマイザー・実行計画
データベースとは
データベースとは、コンピュータに格納したデータの集まりのことです。
また、データベースを操作するシステムを DBMS(DataBase Management System)と言います。
DBMS では CRUD と呼ばれる以下の機能が実装されています。
- Create(生成)
- Read(読み取り)
- Update(更新)
- Delete(削除)
データベースの種類
データベースには主に次の3種類の方法でデータを格納します。
データベースの種類 | 説明 | 製品例 |
---|---|---|
リレーショナルデータベース(RDBMS) | 一般的に二次元の表形式のデータの集合 (厳密にはここを参照) ![]() 行単位でデータを操作する | MySQL PostgreSQL SQL Server Oracle Database SQLite |
階層型データベース | 木構造のデータの集合![]() https://is.gd/QiDShY | DNS ※1 LDAP ※1 |
NoSQL(Not only SQL) | 二次元の表形式以外のデータの集合 (別名:非リレーショナルデータベース※2) ![]() https://thinkit.co.jp/article/11882 | MongoDB DynamoDB Redis Neo4j Cassandra |
※1 諸説あり
※1 LDAPは階層型のデータベースと考えると理解しやすいでしょう。
https://software.fujitsu.com/jp/manual/manualfiles/M050000/B1WN4901/02/irep01/irep0010.htm
※1 Yes, definitely LDAP is hierarchical. So is DNS. In fact, DNS, LDAP, and common filesystems are by far the most widely used hierarchical databases. The topic's claim that IMS and Windows Registry are the most common is laughable.
https://en.wikipedia.org/wiki/Talk%3AHierarchical_database_model#LDAP
※2 NoSQLデータベース:NoSQLデータベース(非リレーショナル・データベース)では、非構造化データと半構造化データを格納し、操作できます
https://www.oracle.com/jp/database/what-is-database/
本記事では、現時点で主流のリレーショナルデータベースを中心に説明します。
データベースの用語
リレーショナルデータベースと SQL(データベースを操作するための言語)で利用する用語は以下のとおりです。

SQL 用語 | Relational database 用語 | 説明 |
---|---|---|
ロウ (Row) | Tuple or record | 1行のこと |
カラム (Column) | Attribute or field | 1列のこと 行の要素にラベルをつけたもの |
テーブル (Table) | Relation or Base relvar | 行と列の集合のこと 共通のカラム(属性)を持つ集合 |
結果セット (result set) | Derived relvar | SQL によりテーブルから取得した行の集合 ビュー (View) もこれに当たる |
データベースの構造
リレーショナルデータベースは以下の構造を持ちます。
構造名 | 説明 |
---|---|
テーブル | 2次元表のこと |
スキーマ | テーブルの集合 「ディレクトリ(フォルダ)」に相当する |
データベース | スキーマの集合 「データベースユーザーが接続する」単位 |
インスタンス | データベースの集合 OS の「プロセス」単位 |
つまり、リレーショナルデータベースは複数のテーブルを持つ階層構造となっています。

なお、リレーショナルデータベースの構造は、以下のように製品によって異なります。
構造名 | インスタンス | データベース | スキーマ | テーブル |
---|---|---|---|---|
MySQL | ○ | ○ データベース=スキーマ ※1 | △ データベース=スキーマ ※1 | ○ |
PostgreSQL | ○(サーバー) | ○ | ○ | ○ |
Oracle | ○ | △1つのインスタンスに1つまで | ○ | ○ |
SQL Server | ○ | ○ | ○ | ○ |
※1
https://dev.mysql.com/doc/refman/5.6/en/create-database.html
CREATE SCHEMA is a synonym for CREATE DATABASE
データベースの機能
リレーショナルデータベースは以下の機能を持ちます。
- SQL によるデータベースの操作
- ACID 特性に基づいたトランザクション処理
- 耐障害性(クラスター・レプリケーション)と障害時の復旧(バックアップ・リカバリ)