Los últimos tutoriales de desarrollo web
 

SQL restricción CHECK


Restricción CHECK SQL

La restricción CHECK se utiliza para limitar el rango de valores que puede ser colocado en una columna.

Si se define una restricción CHECK en una sola columna que permite sólo ciertos valores de esta columna.

Si se define una restricción CHECK en una mesa que puede limitar los valores en ciertas columnas en base a valores de otras columnas de la fila.


Restricción CHECK en SQL CREATE TABLE

El siguiente SQL crea una restricción CHECK en el "P_Id" columna cuando el "Persons" se crea la tabla. La restricción CHECK especifica que la columna "P_Id" sólo se debe incluir números enteros mayores que 0.

MySQL:

CREATE TABLE Persons
(
P_Id int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
CHECK (P_Id>0)
)

SQL Server / Oracle / MS Access:

CREATE TABLE Persons
(
P_Id int NOT NULL CHECK (P_Id>0),
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)

Para permitir la designación de una restricción CHECK, y para definir una restricción CHECK en varias columnas, utilice la siguiente sintaxis SQL:

MySQL / 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),
CONSTRAINT chk_Person CHECK (P_Id>0 AND City='Sandnes')
)

SQL restricción CHECK en ALTER TABLE

Para crear una restricción CHECK en el "P_Id" columna cuando ya se ha creado la tabla, utilice el siguiente código SQL:

MySQL / SQL Server / Oracle / MS Access:

ALTER TABLE Persons
ADD CHECK (P_Id>0)

Para permitir la designación de una restricción CHECK, y para definir una restricción CHECK en varias columnas, utilice la siguiente sintaxis SQL:

MySQL / SQL Server / Oracle / MS Access:

ALTER TABLE Persons
ADD CONSTRAINT chk_Person CHECK (P_Id>0 AND City='Sandnes')

Para quitar una restricción CHECK

Para quitar una restricción CHECK, utilice el siguiente código SQL:

SQL Server / Oracle / MS Access:

ALTER TABLE Persons
DROP CONSTRAINT chk_Person

MySQL:

ALTER TABLE Persons
DROP CHECK chk_Person