1. ホーム
  2. コース一覧
  3. データベース基礎コース
  4. CREATE TABLE文でMySQLにテーブルを作成しよう

データベース基礎コース10/13

CREATE TABLE文でMySQLにテーブルを作成しよう

こちらでは、テーブルの作成方法ついて解説します。CREATE TABLE文を使うことによって新たなテーブルを定義し, 作成することができます。

今回解説していく内容は

  1. テーブルの型(種類)
  2. テーブルの作成方法
  3. CREATE TABLE文の基本的な使い方

テーブル:データ型とは?

データ型とは保存したいデータの形式を表したものです。

MySQLで利用できるデータ型は様々なものがあります。その中でもよく使用するデータ型を以下に示しました。

データ型説明
INT型整数を扱うことができるデータ型
DOUBLE型小数を扱うことができるデータ型
TEXT型文章用の長い文字列を扱うことができるデータ型
DATETIME型日付と時刻を扱うことができるデータ型
VARCHAR型文字列を扱うことができるデータ型です。 使用する際は次のように後ろに最大文字数を設定する必要があります 。例)VARCHAR(10)

テーブルを作成する際はこれらのデータ型を指定して作成します。指定したデータの型でテーブルに保存することができます。

また、テーブルを作成する際には、カラムに対してデータ型の指定だけでなくより詳細な設定(データの状態)をすることができます。

データの詳細な設定

DEFAULT

データが作成される際、値が指定されていなかった場合にデフォルトの値が格納されます。また、デフォルトで使用したい値は次のようにDEFAULTの後に記述します。

```sql
DEFAULT 値
```

NOT NULL, NULL

該当のカラムにNULL(空のデータ)を格納できるかを設定できます。NOT NULLの場合はNULLを許さず、NULLの場合はNULLを許します。また、どちらも記述されていない場合はNULLが設定され、DEFAULTもNULLになります。

UNIQUE

UNIQUEを設定すると同じ値をカラムに格納できなくなります

PRIMARY KEY

テーブルを作成する際はレコードを特定できるように、唯一の値を持つカラムを設定する必要があり、そのカラムに対してPRIMARY KEYを設定します。また、PRIMARY KEYを設定することで、カラムにはUNIQUEとNOT NULLが自動で設定されます。これによって、レコードを一意に識別できるようになります

AUTO_INCREMENT

データを追加した際、AUTO_INCREMENTが設定されているカラムの最大値に1を追加したものを自動で格納します。また、このAUTO_INCREMENTは主にPRIMARY KEYに対して独自の規則などの特別な方法で管理しないときに使用します。

次にテーブルの作成方法について紹介します。

テーブルの作成

テーブルを作成するには CREATE TABLE を使用します。

使い方は以下のように CREATE TABLE の次に作成したいテーブルの名前を指定し、その後括弧の中にカラムとそのカラムがどんなデータ型を使用するかを指定します。

CREATE TABLE テーブル名(カラム名1 データ型, カラム名2 データ型...);

テーブルを作成する際には、カラムに対してデータ型の指定だけでなく,より詳細な設定をすることがほとんどです。

CREATE TABLE テーブル名(カラム名 データ型 NOT NULL PRIMARY KEY...);

foodデータベースに fruitテーブルを作成する

CREATE DATABASE food;

データベースの作成

show databases;

データベースができているか確認

USE food;

使用するDBの選択

CREATE TABLE fruit(
id INT NOT NULL PRIMARY KEY,
apple VARCHAR NOT NULL,
price INT NOT NULL
);

テーブルを新たに作成

show tables;

テーブルが作成できているか確認

describe fruit;

作成したテーブルの中身がちゃんとできているか確認。

まとめ

今回はテーブルの作成方法とデータの型について紹介しました。

テーブルの作成

CREATE TABLE テーブル名(カラム名1 データ型, カラム名2 データ型...);

SQLは実務でよく利用するので、この機会に簡単な部分だけでも覚えておきましょう。

問題を解くためには、十分な画面サイズのPC環境をご利用下さい。