Cómo utilizar las reglas de integridad referencial y el predicado partido sql

Video: Base de datos con integridad referencial en cascada en MYSQL

Reglas de integridad referencial requieren que los valores de una columna o columnas en una tabla de SQL coinciden con los valores de una columna o columnas de otra tabla. Usted se refiere a las columnas de la primera tabla como el clave externa y las columnas de la segunda tabla como el clave primaria o llave unica.

Por ejemplo, es posible declarar la columna EmpDeptNo en una tabla de los empleados como una clave externa que hace referencia el DEPTNO columna de una tabla DEPT. Este partido asegura que si se graba un empleado en la tabla EMPLEADO como trabajar en el departamento 123, una fila aparece en la tabla DEPT donde DEPTNO es 123.

Si los miembros del par de claves clave / primaria extranjera ambos constan de una sola columna, la situación es bastante sencillo. Sin embargo, las dos claves pueden consistir en múltiples columnas. los DEPTNO valor, por ejemplo, puede ser único sólo dentro de una Ubicación- Por lo tanto, para identificar de forma única una DEPARTAMENTO fila, que se deben especificar una Ubicación y una DEPTNO.

Si ambas las oficinas de Boston y Tampa tienen un departamento de 123, es necesario identificar los departamentos ( ‘Boston’, ‘123’) y ( ‘Tampa’, ‘123’). En este caso, la tabla empleado necesita dos columnas para identificar una DEPARTAMENTO. Llamar a esas columnas EmpLoc y EmpDeptNo. Si un empleado trabaja en el departamento 123 en Boston, la EmpLoc y EmpDeptNo Los valores son `Bostón` y ‘123’. Y la declaración de clave externa en la tabla EMPLEADO se ve así:

FOREIGN KEY (EmpLoc, EmpDeptNo) REFERENCIAS DEPT (Lugar, DEPTNO)

Sacar conclusiones válidas de los datos se hace inmensamente complicada si los datos contienen valores nulos. Eso es porque a veces se quiere tratar dichos datos de una manera, ya veces se quiere tratar de otra manera. los ÚNICO, SENCILLO, PARCIAL, y COMPLETO palabras clave especifican diferentes formas de tratamiento de datos que contiene valores nulos.

Si los datos hace contener valores nulos, abandonar la modalidad de velocidad de lectura primero y leer la siguiente lista lentamente y con cuidado. Cada entrada en la lista dada aquí se presenta una situación diferente con respecto a los valores nulos - y cuenta cómo el PARTIDO predicado maneja.

Éstos son los escenarios que ilustran las reglas para tratar con valores nulos y la PARTIDO predicado:

  • Los valores son a la vez de un modo u otro. Si ninguno de los valores de EmpLoc y EmpDeptNo son nulos (o ambos son null), entonces las reglas de integridad referencial son los mismos que para las claves de una sola columna con valores que son nulo o no nulo.

    Video: integridad referencial en base de datos

  • Un valor es nulo y uno no lo es. Si, por ejemplo, EmpLoc es nula y EmpDeptNo No es nulo - o EmpLoc no es nula y EmpDeptNo es nulo - que necesita nuevas reglas. Cuando las normas de aplicación, si se inserta o actualiza la tabla de los empleados con EmpLoc y EmpDeptNo valores de (NULL, ‘123’) o ( ‘Boston’, NULL), Tiene seis alternativas principales: SENCILLO, PARCIAL, y COMPLETO, cada uno con o sin la ÚNICO palabra clave.

  • los ÚNICO palabra clave está presente. Una fila coincidente en la tabla de resultados subconsulta debe ser único para que el predicado para evaluar a un valor verdadero.

  • Ambos componentes de la expresión valor de fila R son nulos. los PARTIDO predicado devuelve un valor verdadero, independientemente del contenido de la tabla de resultados subconsulta que se comparan.

  • Ninguno de los componentes de la expresión valor de fila R es nulo, SENCILLO está especificado, ÚNICO No se especifica, y al menos una fila en la tabla de resultados subconsulta coincide con R. los PARTIDO predicado devuelve un valor verdadero. De lo contrario, devuelve un valor falso.

  • Ninguno de los componentes del valor de expresión fila R es nulo, SENCILLO está especificado, ÚNICO se especifica, y al menos una fila en la tabla de resultados subconsulta es a la vez único y coincide con R. los PARTIDO predicado devuelve un valor verdadero. De lo contrario, devuelve un valor falso.

  • Cualquier componente de la expresión valor de fila R es nulo y SENCILLO está especificado. los PARTIDO predicado devuelve un valor verdadero.

  • Cualquier componente del valor de la fila expresión R no es nulo, PARCIAL está especificado, ÚNICO no se especifica, y la parte no nula de al menos una fila en la tabla de resultados subconsulta coincide R. los PARTIDO predicado devuelve un valor verdadero. De lo contrario, devuelve un valor falso.

    Video: Restricciones de Base de Datos

  • Cualquier componente del valor de expresión fila R es no nulo, PARCIAL está especificado, ÚNICO se especifica, y las partes no son nulos de R coinciden con las partes no son nulos de al menos una fila única en la tabla de resultados subconsulta. los PARTIDO predicado devuelve un valor verdadero. De lo contrario, devuelve un valor falso.

  • Ninguno de los componentes del valor de expresión fila R es nulo, COMPLETO está especificado, ÚNICO No se especifica, y al menos una fila en la tabla de resultados subconsulta coincide con R. los PARTIDO predicado devuelve un valor verdadero. De lo contrario, devuelve un valor falso.

  • Ninguno de los componentes del valor de expresión fila R es nulo, COMPLETO está especificado, ÚNICO se especifica, y al menos una fila en la tabla de resultados subconsulta es a la vez único y coincide con R. los PARTIDO predicado devuelve un valor verdadero. De lo contrario, devuelve un valor falso.

    Video: integridad base de datos

  • Cualquier componente de la expresión valor de fila R es nulo, y COMPLETO está especificado. los PARTIDO predicado devuelve un valor falso.

Artículos Relacionados