Restricciones de Integridad - PowerPoint PPT Presentation

1 / 14
About This Presentation
Title:

Restricciones de Integridad

Description:

Las restricciones de integridad aseguran que la informaci n contenida en una ... Ventajas de declarar las restricciones de integridad ... 3. propagar (cascade) ... – PowerPoint PPT presentation

Number of Views:252
Avg rating:3.0/5.0
Slides: 15
Provided by: elenatej
Category:

less

Transcript and Presenter's Notes

Title: Restricciones de Integridad


1
Restricciones de Integridad en ORACLE
E. Sánchez E. Tejadillos
Laboratorio de Sistemas de Información Facultad
de Informática Universidad Politécnica de Valencia
2
Índice
  • Definición
  • Tipos de restricciones de integridad
  • Restricciones de Integridad en Oracle
  • Valores Nulos
  • Valores por Defecto
  • Clave Primaria
  • Clave Alternativa
  • Clave Ajena
  • Restricciones de integridad estáticas
  • Demo

3
Definición
  • Las restricciones de integridad aseguran que la
    información contenida en una base de datos es
    correcta.
  • Ventajas de declarar las restricciones de
    integridad como parte del esquema de la base de
    datos
  • Reduce el coste de desarrollo de software.
  • Es más confiable al ser centralizado y uniforme.
  • Mantenimiento más fácil.

4
Tipos
  • Según estén orientadas
  • Restricciones de Cardinalidad
  • Restricción de Dominio
  • Restricción de Unicidad
  • Restricción de Inverso
  • Restricción de Coexistencia
  • Restricción de Clases hijas Disjuntas
  • Restricción de Cobertura
  • Según el estado
  • Estáticas
  • limitan los estados permitidos de la BD.
  • Dinámicas
  • restringen las posibles transiciones de estados
    de la BD.

5
Restricciones de integridad elementales en Oracle
  • Integridad de Entidades
  • Valores nulos
  • Valores por defecto
  • Claves primarias
  • Claves alternativas
  • Restricciones de integridad estáticas
  • Integridad referencial
  • Claves ajenas

6
Tratamiento de valores nulos
  • Especifica si una columna puede contener o no
    valores nulos. ORACLE por defecto admite valores
    nulos.
  • atributo tipo CONSTRAINT nombre NOT NULL
    NULL.
  • Ejemplo
  • Dni integer CONSTRAINT nn_dni NOT NULL

7
Tratamiento de valores por defecto
  • Especifica los valores que podrán ser asignados a
    una columna, cuando en ésta no se introduzca
    ningún valor .
  • atributo tipo DEFAULT expresión.
  •  
  • Ejemplo
  • Num integer DEFAULT 13.

8
Tratamiento de clave primaria
  • Designa una columna o combinación de columnas
    como clave primaria de la tabla.
  • Puede ser definida a nivel de tabla o columna.
  • A nivel columna
  • atributo tipo CONSTRAINT nombre PRIMARY KEY.
  •  A nivel tabla
  • CONSTRAINT nombre PRIMARY KEY(colum1,.. colum
    ..)

9
Tratamiento de clave alternativa
  • Se designa una columna o combinación de columnas
    como clave única alternativa a la clave
    seleccionada como primaria .
  • Puede ser definida a nivel de tabla o columna.
  • A nivel columna
  • atributo tipo CONSTRAINT nombre UNIQUE
  • A nivel tabla
  • CONSTRAINT nombre UNIQUE (colum1,.. colum ..)

10
Tratamiento de las restricciones de integridad
estáticas
  • Son fórmulas bien formadas de primer orden
    construidas con atributos de la tabla como
    términos básicos, que satisfacen en todos los
    estados válidos para las tuplas de una relación .
  • Son restricciones de tipo CHECK asociadas a una
    columna o una tabla .
  • atributo tipo CONSTRAINT nombre CHECK
    condición.
  •  
  • Ejemplo
  • Saldo integer CHECK saldo!saldo_base

11
Tratamiento de claves ajenas
  • A nivel columna
  • Se declara detrás del tipo asociado .
  • Si solo se indica el nombre de la tabla, por
    defecto se referencia a la clave primaria de la
    tabla.
  • La columna donde se define el REFERENCES puede
    tener valores nulos
  • atributo tipo CONSTRAINT nombre
  • REFENCES ntabla(columna) ON DELETE CASCADE
  • Ejemplo
  • Dep char(10) REFERENCES departamento(nom)

12
Tratamiento de claves ajenas
  • A nivel de tabla
  • Se especifica la columna o composición de
    columnas que forman parte de la clave ajena
    después de la palabra clave FOREIGN KEY y la
    columna o columnas a la que se hace referencia
    después de la palabra clave REFERENCES
  • El número de columnas y tipos debe coincidir
  • CONSTRAINT nombre FOREIGN KEY (columna1,
    columna2, ...) REFERENCES n_tabla(columna1,
    columna2,...) ON DELETE CASCADE
  •  
  • Ejemplo
  • FOREIGN KEY(dep) REFERENCES departamento(nom)

13
Tratamiento de claves ajenas
  • Acciones realizar en caso de borrado o
    modificación de la clave primaria a la que hace
    referencia la clave ajena
  • 1.       Restringir (restrict),
  • 2.       poner a nulos (set null),
  • 3.       propagar (cascade),
  • En ORACLE se puede especificar la situación en
    que se borre la clave primaria y queramos
    propagarlo a la clave ajena mediante la cláusula
    on delete cascade. 
  • Por defecto, ORACLE asume la operación como
    restringida y para incluir otras características
    hay que generar disparadores (triggers).

14
Modificación de restricciones
  • Tipos de modificaciones sobre una BD
  • No afectan a la integridad de la BD ya existente.
  • Si afectan a la integridad de la BD e implican
    la toma de decisiones. El diseñador es quién debe
    elegir el mecanismo para mantener la BD íntegra
  • ALTER TABLE sirve para añadir o redefinir una
    columna, a añadir o borrar una restricción de
    integridad y para activar o desactivar cualquier
    restricción de integridad o disparo
Write a Comment
User Comments (0)
About PowerShow.com