DEFAULT 制約は、列にデフォルト値を挿入するために使用します。
デフォルト値は、他の値が指定されていない場合、全ての新規レコードに追加されます。
次の SQL は、"Persons" テーブルを作るときに、"City" 列に DEFAULT 制約を作成します:
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()
)
テーブルが作成済みだった場合、"City" 列に DEFAULT 制約を作成するには、次の 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'
TDEFAULT 制約の削除には、次の SQL を使用します:
MySQL:
ALTER TABLE Persons
ALTER City DROP DEFAULT
SQL Server / Oracle / MS Access:
ALTER TABLE Persons
ALTER COLUMN City DROP DEFAULT