Iniciar sesión con Microsoft
Iniciar sesión o crear una cuenta
Hola:
Seleccione una cuenta diferente.
Tiene varias cuentas
Elija la cuenta con la que desea iniciar sesión.

Síntomas

Suponga que intenta eliminar datos de una tabla y los datos se hace referencia en otras tablas de Microsoft SQL Server 2016 y 2017. If explorar consulta plan de ejecución, puede ver utiliza un operador de referencia de clave externa Compruebe .En esta situación, puede recibir un mensaje de error siguiente incluso si la fila que se está eliminado no se hace referencia en otras tablas:

Msg 547, nivel 16, estado 0, línea LineNumber

La instrucción DELETE en conflicto con la restricción de referencia

Estado

Microsoft ha confirmado que se trata de un problema de los productos de Microsoft enumerados en la sección "Se aplica a".

Resolución

Este problema se corrigió en la siguiente actualización acumulativa para SQL Server:

Nota: Este problema se corrige en la actualización acumulativa 6. 2016 SP2 de SQL Server.

Acerca de las actualizaciones acumulativas de SQL Server:

Cada nueva actualización acumulativa para SQL Server contiene todas las revisiones y todas las revisiones de la seguridad que se incluyeron en la actualización acumulativa anterior. Consulte las actualizaciones acumulativas más recientes para SQL Server:

Solución alternativa

Para resolver este problema, utilice uno de los métodos siguientes:

  • Utilice el nivel de compatibilidad inferior 130 para ejecutar esta consulta.

  • Cambiar la estructura del índice en la tabla de referencia.

Más información

Nivel de compatibilidad de configuración de ámbito de inicial de la base de datos 130 de 2016 de SQL Server, un plan de ejecución de consulta puede utilizar una referencia de clave externa Operador de verificación para comprobar si las filas de la otra hace referencia a una fila de una tabla tablas a través de restricciones de integridad referencial. Puede utilizarse el operador si una tabla hace referencia a un gran número de tablas externas. En este operador SQL Server elige un índice de cada tabla de referencia para realizar dicha comprobación. If una tabla de referencia tiene un índice con varias columnas de clave, dicha parte columnas al principio no forman parte de la clave externa, pero algunos otros las columnas son parte de la clave externa. Esto puede resultar en comprobación incorrecta que se realiza por SQL Server.

Por ejemplo, considere el siguiente esquema:

Crear tabla tpk (pk int restricción cpk de clave principal agrupada)

Crear tabla tfk (un int, int fk restricción cfk referencias de clave externa tpk, índice ia clustered(a,fk))

Este esquema puede resultar en este problema, pero si cambia orden de columnas de índice i a (fk, un), no lo hará.

Referencias

Obtener información sobre la  terminologíaque utiliza Microsoft para describir las actualizaciones de software.

¿Necesita más ayuda?

¿Quiere más opciones?

Explore las ventajas de las suscripciones, examine los cursos de aprendizaje, aprenda a proteger su dispositivo y mucho más.

Las comunidades le ayudan a formular y responder preguntas, enviar comentarios y leer a expertos con conocimientos extensos.

¿Le ha sido útil esta información?

¿Cuál es tu grado de satisfacción con la calidad del lenguaje?
¿Qué ha afectado a su experiencia?
Si presiona Enviar, sus comentarios se usarán para mejorar los productos y servicios de Microsoft. El administrador de TI podrá recopilar estos datos. Declaración de privacidad.

¡Gracias por sus comentarios!

×