テーブルの作成について
テーブルの作成にはCREATE TABLE
を使用する
デフォルト値には、固定値の他、関数なども利用できる。デフォルト値が指定されていない場合は、暗黙的にNULLが指定される。
構文
CREATE TABLE テーブル名(列名 データ型 [デフォルト値] [, ...]);
使用例
tblテーブルを作成する
-- tblテーブルを作成
CREATE TABLE tbl (
c1 int DEFAULT 10, -- c1のデフォルトを10に設定
c2 text,
c3 text DEFAULT 'ABC',
c4 timestamp DEFAULT now()
);
-- テーブル定義の確認
¥d tbl
テーブル作成の中で主キー制約を作成する
主キー制約とは
主キー(プライマリーキー)制約とは、重複値、NULLの格納を禁止する。1つのテーブルに1つだけ作成可能
内部的にインデックスも作成される。
構文
CREATE TABLE テーブル名 (列名 データ型 PRIMARY KEY);
使用例
-- tblテーブルのc1に主キーを設定して作成する
CREATE TABLE tbl (
c1 int PRIMARY KEY,
c2 text,
c3 text DEFAULT 'ABC',
c4 timestamp DEFAULT now()
);
-- テーブル定義の確認
¥d tbl
テーブル作成の中でユニーク制約を作成する
ユニーク制約とは
ユニーク制約とは、重複値の格納を禁止する。
NULLの格納を許可する。
構文
CREATE TABLE テーブル名 (列名 データ型 UNIQUE);
使用例
-- tblテーブルのc1に主キーを設定して作成する
CREATE TABLE tbl (
c1 int UNIQUE,
c2 text,
c3 text DEFAULT 'ABC',
c4 timestamp DEFAULT now()
);
-- テーブル定義の確認
¥d tbl
テーブル作成の中でNOT NULL制約を作成する
NOT NULL制約とは
NOT NULL制約とは、重複値のNULL禁止する。
構文
CREATE TABLE テーブル名 (列名 データ型 NOT NULL);
使用例
-- tblテーブルのc1に主キーを設定して作成する
CREATE TABLE tbl (
c1 int PRIMARY KEY,
c2 text NOT NULL,
c3 text DEFAULT 'ABC',
c4 timestamp DEFAULT now()
);
-- テーブル定義の確認
¥d tbl
コメント