Vincolo SQL DEFAULT

Vincolo SQL DEFAULT

La constraint DEFAULT serve per inserire un valore predefinito nella colonna.

Se non è stato specificato un altro valore, verrà aggiunto il valore predefinito a tutti i nuovi record.

Constraint DEFAULT di SQL su CREATE TABLE

Il seguente SQL crea un vincolo DEFAULT per la colonna "City" quando viene creata la tabella "Persons":

MySQL / SQL Server / Oracle / MS Access:

CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255) DEFAULT 'Sandnes'
)

Utilizzando funzioni come GETDATE(), il vincolo DEFAULT può anche essere utilizzato per inserire valori di sistema:

CREATE TABLE Orders
(
Id_O int NOT NULL,
OrderNo int NOT NULL,
Id_P int,
OrderDate date DEFAULT GETDATE()
)

Vincolo DEFAULT SQL su ALTER TABLE

Se si crea un vincolo DEFAULT per la colonna "City" in una tabella già esistente, utilizzare il seguente SQL:

MySQL:

ALTER TABLE Persons
ALTER City SET DEFAULT 'SANDNES'

SQL Server / Oracle / MS Access:

ALTER TABLE Persons
ALTER COLUMN City SET DEFAULT 'SANDNES'

Revoca vincolo DEFAULT

Se si desidera revocare il vincolo DEFAULT, utilizzare il seguente SQL:

MySQL:

ALTER TABLE Persons
ALTER City DROP DEFAULT

SQL Server / Oracle / MS Access:

ALTER TABLE Persons
ALTER COLUMN City DROP DEFAULT