bugl
bugl
HomeLearnPatternsSearch
HomeLearnPatternsSearch

Loading lesson path

Learn/SQL/SQL Database
SQL•SQL Database

SQL DEFAULT Constraint

Overview

The DEFAULT

constraint is used to automatically insert a default value for a column, if no value is specified. The default value will be added to all new records (if no other value is specified).

DEFAULT Constraint on CREATE TABLE

The following SQL sets a DEFAULT

value for the "City" column upon creation of the "Persons" table:

CREATE TABLE Persons

( ID int PRIMARY KEY, LastName varchar(255) NOT NULL, FirstName varchar(255), Age int,

City varchar(255) DEFAULT 'Sandnes'

);

The DEFAULT

constraint can also be used to insert system values, by using functions like CURRENT_DATE() to insert the current date:

MySQL:

CREATE TABLE Orders

( ID int PRIMARY KEY, OrderNumber int NOT NULL, OrderDate date DEFAULT CURRENT_DATE()

);

SQL Server:

To achieve the same result in SQL Server use the following SQL (to insert the current date):

CREATE TABLE Orders

( ID int PRIMARY KEY, OrderNumber int NOT NULL,

OrderDate date DEFAULT CAST(GETDATE() AS date)

);

DEFAULT Constraint on ALTER TABLE

To define a DEFAULT

constraint on the "City" column when the table is already created, use the following SQL:

MySQL:

ALTER TABLE Persons

ALTER City SET DEFAULT 'Sandnes';

SQL Server:

ALTER TABLE Persons

ADD CONSTRAINT df_City DEFAULT 'Sandnes' FOR City;

MS Access:

ALTER TABLE Persons

ALTER COLUMN City SET DEFAULT 'Sandnes';

Oracle:

ALTER TABLE Persons

MODIFY City DEFAULT 'Sandnes';

Drop a DEFAULT Constraint

To drop a DEFAULT

constraint, use the following SQL:

Previous

SQL CHECK Constraint

Next

SQL CREATE INDEX Statement