SQLのDEFAULT制約
DEFAULT制約は、カラムにデフォルト値を挿入するために使用されます。
他の値が指定されていない場合、デフォルト値は、すべての新しいレコードに追加されます。
CREATE TABLE上のSQL DEFAULT制約
次のSQLは、上のDEFAULT制約を作成し、 "City"とき列"Persons"テーブルが作成されます。
My SQL / SQL Server / Oracle / MS Access:
CREATE TABLE Persons
(
P_Id int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255) DEFAULT 'Sandnes'
)
DEFAULT制約もGETDATE()のような関数を使用して、システムの値を挿入するために使用することができます。
CREATE TABLE Orders
(
O_Id int NOT NULL,
OrderNo int NOT NULL,
P_Id int,
OrderDate date DEFAULT GETDATE()
)
ALTER TABLE上のSQL DEFAULT制約
DEFAULT制約を作成するには"City"テーブルが既に作成されている列は、次のSQLを使用します。
MySQL:
ALTER TABLE Persons
ALTER City SET DEFAULT 'SANDNES'
SQL Server / MS Access:
ALTER TABLE Persons
ALTER COLUMN City SET DEFAULT 'SANDNES'
Oracle:
ALTER TABLE Persons
MODIFY City DEFAULT 'SANDNES'
DEFAULT制約を削除するには
DEFAULT制約を削除するには、次のSQLを使用します。
MySQL:
ALTER TABLE Persons
ALTER City DROP DEFAULT
SQL Server / Oracle / MS Access:
ALTER TABLE Persons
ALTER COLUMN City DROP DEFAULT