A veces es muy tedioso insertar siempre lo mismo en un campo. Imagínate que casi todos los jugadores fuesen de España y tenemos un campo País. ¿No sería cómodo asignarle un valor por defecto? Eso es lo que hace la restricción DEFAULT
.
En nuestro ejemplo vamos a añadir a la tabla USUARIOS el campo País y le daremos por defecto el valor "España".
CREATE TABLE USUARIOS (
Pais VARCHAR2(20) DEFAULT ' España ' );
En las especificaciones de DEFAULT
vamos a poder añadir distintas expresiones: constantes, funciones SQL y variables.
Si queremos incluir en un campo la fecha actual, independientemente del día en el que estemos, podremos utilizar la función SYSDATE
como valor por defecto:
CREATE TABLE USUARIOS (
Fecha_ingreso DATE DEFAULT SYSDATE);
También vamos a necesitar que se compruebe que los valores que se introducen son adecuados para ese campo. Para ello utilizaremos CHECK
.
Esta restricción comprueba que se cumpla una condición determinada al rellenar una columna. Dicha condición se puede construir con columnas de esa misma tabla.
Si en la tabla USUARIOS tenemos el campo Crédito y éste sólo puede estar entre 0 y 2000, lo especificaríamos así:
CREATE TABLE USUARIOS (
Credito NUMBER(4) CHECK (Crédito BETWEEN 0 AND 2000));
Una misma columna puede tener varios CHECK
asociados a ella, para ello ponemos varios CONSTRAINT
seguidos y separados por comas.