Está en la página 1de 9

Restricciones CHECK

Restricciones CHECK

Álvaro Herrera

13 de noviembre de 2004

Álvaro Herrera Restricciones CHECK


Qué son
Para Que Sirven
Restricciones CHECK
Cómo Se Implementan
Ejemplos

Qué son

I Restricciones
I Aplicadas a columnas de una tabla
I Verificadas cada
I INSERT
I UPDATE

Álvaro Herrera Restricciones CHECK


Qué son
Para Que Sirven
Restricciones CHECK
Cómo Se Implementan
Ejemplos

Para qué sirven

I Mantención de la integridad
I Medida básica (después de llaves foráneas)
I Restringir valores lo más posible

Álvaro Herrera Restricciones CHECK


Qué son
Para Que Sirven
Restricciones CHECK
Cómo Se Implementan
Ejemplos

Cómo se implementan — CREATE TABLE

En CREATE TABLE

CREATE TABLE ... (


nombre tipo restriccion ...
)

donde restricción es

CONSTRAINT nombre CHECK condicion

Álvaro Herrera Restricciones CHECK


Qué son
Para Que Sirven
Restricciones CHECK
Cómo Se Implementan
Ejemplos

Cómo se implementan — ALTER TABLE

Usando ALTER TABLE

ALTER TABLE tabla


ADD CONSTRAINT foo
CHECK condicion

Álvaro Herrera Restricciones CHECK


Qué son
Para Que Sirven
Restricciones CHECK
Cómo Se Implementan
Ejemplos

Ejemplos — Trivial

CREATE TABLE ... (


campo1 INTEGER NOT NULL,
campo2 INTEGER CHECK (campo2 IS NOT NULL),
...
);

Álvaro Herrera Restricciones CHECK


Qué son
Para Que Sirven
Restricciones CHECK
Cómo Se Implementan
Ejemplos

Ejemplos — Con ALTER TABLE

CREATE TABLE foobar (


campo1 INTEGER NOT NULL,
campo2 INTEGER,
...
);
ALTER TABLE foobar
ADD CONSTRAINT campo2_positivo
CHECK (campo2 > 0)

Álvaro Herrera Restricciones CHECK


Qué son
Para Que Sirven
Restricciones CHECK
Cómo Se Implementan
Ejemplos

Ejemplos — Restringiendo el Dominio

CREATE TABLE foobar (


campo1 INTEGER CHECK
(campo1 > 20 AND campo1 < 100),
...
);

Álvaro Herrera Restricciones CHECK


Qué son
Para Que Sirven
Restricciones CHECK
Cómo Se Implementan
Ejemplos

RUT

CREATE TABLE personas (


rut INTEGER CHECK
(rut IS NULL = dv IS NULL),
dv CHAR(1) CHECK
(dv = digitoVerificador(rut)),
...
);

Álvaro Herrera Restricciones CHECK

También podría gustarte