Vincolo SQL CHECK
- Pagina precedente Chiave esterna SQL
- Pagina successiva SQL Default
Vincolo SQL CHECK
La constraint CHECK viene utilizzata per limitare l'intervallo di valori nella colonna.
Se si definisce una constraint CHECK su una singola colonna, questa colonna accetterà solo valori specifici.
Se si definisce una constraint CHECK su una tabella, questa constraint limiterà i valori specifici su determinate colonne.
Constraint CHECK SQL su CREATE TABLE
Il seguente SQL crea una constraint CHECK per la colonna "Id_P" durante la creazione della tabella "Persons". La constraint CHECK stabilisce che la colonna "Id_P" deve contenere solo interi positivi.
MySQL:
CREATE TABLE Persons ( Id_P int NOT NULL, LastName varchar(255) NOT NULL, FirstName varchar(255), Address varchar(255), City varchar(255), CHECK (Id_P>0) )
SQL Server / Oracle / MS Access:
CREATE TABLE Persons ( Id_P int NOT NULL CHECK (Id_P>0), LastName varchar(255) NOT NULL, FirstName varchar(255), Address varchar(255), City varchar(255) )
Se si desidera dare un nome all'obbligo di controllo CHECK e definire obblighi di controllo per più colonne, utilizzare il seguente sintassi SQL:
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), CONSTRAINT chk_Person CHECK (Id_P>0 AND City='Sandnes') )
Obbligo di controllo CHECK SQL su ALTER TABLE
Se si desidera creare un obbligo di controllo CHECK per la colonna "Id_P" quando la tabella esiste già, utilizzare il seguente SQL:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE Persons ADD CHECK (Id_P>0)
Se si desidera dare un nome all'obbligo di controllo CHECK e definire obblighi di controllo per più colonne, utilizzare il seguente sintassi SQL:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE Persons ADD CONSTRAINT chk_Person CHECK (Id_P>0 AND City='Sandnes')
Revoca dell'obbligo di controllo CHECK
Se si desidera revocare l'obbligo di controllo CHECK, utilizzare il seguente SQL:
SQL Server / Oracle / MS Access:
ALTER TABLE Persons DROP CONSTRAINT chk_Person
MySQL:
ALTER TABLE Persons DROP CHECK chk_Person
- Pagina precedente Chiave esterna SQL
- Pagina successiva SQL Default