読者です 読者をやめる 読者になる 読者になる

サーバー構築メモ

サーバーを構築したりWEBサイトを作ったりした際の個人的な備忘録です

MySQL テーブルを作成する

MySQL MySQL-テーブル

テーブルを作成する

会員ID(customer_id)、グループID(group_id)、会員名(customer_name)、会員読み仮名というフィールドを持つcustomerという名のテーブルを作成する。

create table customer (
 customer_id int(8),
 group_id int(8),
 customer_name varchar(32),
 customer_yomi varchar(2)
);

制約をつけてテーブルを作成する

会員ID、会員名、会員読み仮名にnullの挿入を不許可、グループIDが未指定ならnull、会員名が未指定ならnanashiをデフォルトで挿入する。

create table customer (
 customer_id int(8) not null,
 group_id int(8) default null,
 customer_name varchar(32) not null default 'nanashi',
 customer_yomi varchar(2) not null
);

主キーを指定してテーブルを作成する

会員IDフィールドを主キーにする。

create table customer (
 customer_id int(8) not null auto_increment,
 group_id int(8) default null,
 customer_name varchar(32) not null default 'nanashi',
 customer_yomi varchar(2) not null,
 primary key (customer_id)
);

主キーはテーブル内にひとつだけ。
主キーにするフィールドは必ず「not null」の制約が必要となる。
主キーにしたフィールドはユニーク(重複しない)な値で、インデックスが作成される。
「auto_increment」を指定すると、自動的に重複しないユニーク値が割り当てられる。

インデックスをつけてテーブルを作成する

会員読み仮名フィールドにインデックスをつける。

create table customer (
 customer_id int(8) not null auto_increment,
 group_id int(8) default null,
 customer_name varchar(32) not null default 'nanashi',
 customer_yomi varchar(2) not null,
 primary key (customer_id),
 index (customer_yomi)
);

インデックス名は省略可なので省略。読み仮名で会員を検索する場合にインデックスがあるので、理論上は検索が高速になる。