Documente Academic
Documente Profesional
Documente Cultură
Cuando aplicamos estas reglas a nivel del esquema de la base de datos, es importante tener en cuenta el
nombre lógico que le ponemos, esto los ayuda a entender los errores cuando se violenta alguna de
dichas reglas.
Integridad de la Entidad
Son reglas de integridad que aplican a la totalidad de los registros de la tabla, como un conjunto. Por
ejemplo: Si validamos que el valor de un campo no se repita, estamos diciendo que solo un registro
puede tener un determinado valor en ese campo. Como reglas de este nivel tenemos el PRIMARY KEY y
el UNIQUE INDEX.
Primary Key
Permite definir las columnas de una tabla que son seleccionadas como clave o parte de la clave. La clave
sirve para indicar el identificador único de cada registro, no puede haber dos registros con la misma
clave. Importante tener en cuenta que las columnas seleccionadas como claves no deben permitir nulos.
Ejemplos:
a) Indicando la restricción en el momento que la tabla se define. En este caso el nombre de esta
restricción lo genera la base de datos. Esta es la forma más común.
Para eliminar esta restricción, aplicamos un ALTER de la tabla, por lo que es preciso saber el nombre de
la restricción:
Unique Index
Los índices son estructuras que están mayormente destinadas a incrementar la velocidad de las
consultas, pero también pueden ser utilizadas como herramienta de integridad.
Un índice único se puede utilizar para marcar una clave candidata, eso es cualquier otra clave que
también pudiera ser utilizado como identificador de los registros. Una tabla sólo puede tener una clave
primaria.
El tema de los índices será abordado con más detalles más adelante.
Ejemplos:
En este caso, tenemos que el cliente tiene su clave, pero también queremos que existan dos clientes con
la misma cédula. Veamos tres formas:
Integridad de Dominio
Son reglas orientadas a validar las entradas de una determinada columna. Estas reglas validan el tipo y
el valor en sí.
Ejemplos:
ALTER TABLE empleado
MODIFY COLUMN sexo char(1) NOT NULL
Altera la tabla empleado para que no permita nulo en el campo “sexo”. Aplica a ORACLE.
Integridad Referencial
La integridad referencial valida la relación entre dos tablas, manteniendo la consistencia de las llaves
foráneas.
Por ejemplo: Si un cliente pertenece a un país, no es posible que el país al que ese cliente pertenece no
exista o pueda ser borrado.
Ejemplos:
En estos ejemplos, aplicamos un FOREIGN KEY para la columna “idDepartamento”. Ningún empleado
puede pertenecer a un departamento que no exista.
b) Creando la restricción para una tabla ya existe.
Alter table empleado
Add constraint fk_emp_dep foreign key(iddepartamento)
References departamento(iddepartamento)
FOREING KEY para departamento, indicando el nombre de la restricción. Aplica a MYSQL, SQL
SERVER y Oracle.
Se refiere a restricciones programadas por el usuario utilizando herramientas como los “Triggers” y
“Procedimiento almacenados”. De esto, hablaremos más adelante.