この記事で分かること
データベースとテーブルの作成手順
- ECサイトを作る場合を想定して、次のような構造でデータベース、テーブルを作ります。

テーブルの設計を考える
- 作成するアプリケーションを元に、データを保存するためにどのテーブルが必要でどの項目に保存するのかを考えます。
- 次のような流れでテーブルを作成していきます。
手順1.必要なカラムを洗い出す
- 保存するデータを元に、必要なカラムを洗い出します
- 例えば、ECサイトを作成する場合、「会員番号」「名前」「メールアドレス」「電話番号」の4つの項目が必要と考えます。
手順2.カラムごとの型を設定する
- カラムにそれぞれどんな内容が入るのかを設定します。
- 例えば、「名前」のカラムは文字列が入るので、「VARCHAR」が入ります
データ型の種類
型名 |
データ型 |
値の範囲 |
備考 |
INT |
整数型 |
-2147483648~+2147483647 |
UNSIGNEDを指定した場合:0~4294967295 |
VARCHAR |
文字列型 |
m(バイト数指定):0~65535バイト |
- |
DATETIME |
日付時刻型 |
'YYYY-MM-DD HH:MM:SS' |
データを取得した日時を自動的に取得できる |
※「UNSIGNED」はデータ型に対して付与するもので、負の値が入らないように設定するもの。(0と正の値のみ)
手順3.文字列や値の長さを設定する
- カラムの型に文字列や数字を入力するものを指定した場合、値の長さを設定する必要があります。
- 例えば、文字列型の「VARCHAR」を設定した場合、何文字まで入力可能なのかを設定する必要があります。
手順4.AUTO_INCREMENT(オートインクリメント)とPRIMARY KEY(主キー)について
AUTO_INCREMENT(オートインクリメント)
- AUTO_INCREMENT(オートインクリメント)とは、カラムに値が指定されなかった場合に、自動で1から順番に数字が割り振られるように設定することです。
- 例えば、会員番号を割り当てるとき、AUTO_INCREMENT(オートインクリメント)を設定すると自動で1から順番に数字が割り振られます。
PRIMARY KEY(主キー)
- PRIMARY KEY(主キー)とは、カラムに対してデータを重複させない一意の値のみ入るように設定することです。
- PRIMARY KEY(主キー)を設定することで、同じテーブルの中で、カラムの値は他と重複しないようになります。
- 例えば、お客様の中で偶然同じ名前の人がいる可能性はあります。

- それに対して、会員番号はお客様一人一人に別々の番号が割り当てられているので、同じ名前でも会員番号から一人のお客様を特定することができます。

- このようにデータと値が重複することがないようにPRIMARY KEY(主キー)を設定します。
手順5.SQLでテーブルを作成する
|
カラム名 |
データ型 |
長さ/値 |
A_I |
会員番号 |
id |
INT |
11 |
あり |
名前 |
name |
VARCHAR |
255 |
- |
メールアドレス |
email |
VARCHAR |
255 |
- |
電話番号 |
tel |
VARCHAR |
255 |
- |
SQLコマンド
- 上記のテーブルをSQLで書くと次のようになります。
CREATE TABLE `ec`.`users` ( `id` INT(11) NOT NULL AUTO_INCREMENT , `name` VARCHAR(255) NOT NULL , `email` VARCHAR(255) NOT NULL , `tel` VARCHAR(255) NOT NULL , PRIMARY KEY (`id`)) ENGINE = InnoDB;