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

Cuando actualiza la columna de clave principal de la tabla de clave principal en Microsoft SQL Server 2005 modificando el uso de mayúsculas y minúsculas de los valores de columna existentes o por relleno de valores de columna, recibe el siguiente mensaje de error:

Msj 547, nivel 16, estado 0, línea 1El instrucción UPDATE entra en conflicto con la restricción de referencia "<la restricción>". El conflicto se produjo en la base de datos "<nombre de la base de datos>", tabla "<nombre de tabla>", columna '<nombre de columna>'.

Por ejemplo, este problema se produce en las siguientes situaciones:

Ejemplo 1

  • Cree dos tablas con una intercalación sin distinción entre mayúsculas y minúsculas, como la intercalación SQL_Latin1_General_CP1_CI_AS.

  • Cree una relación de clave principal y externa entre estas dos tablas.

  • Para actualizar la columna de clave principal de la tabla de clave principal, cambie el uso de mayúsculas a minúsculas en los valores de las columnas existentes.

Ejemplo 2

  • Cree dos tablas.

  • Cree una relación de clave principal y externa entre estas dos tablas.

  • El valor ANSI_PADDING se establece en deshabilitado.Nota De forma predeterminada, el valor ANSI_PADDING se establece en desactivado.

  • Para actualizar la columna de clave principal de la tabla de clave principal, rellenando los valores de columna.

Causa

Este problema se produce porque los valores que son iguales en el nivel de tipo pueden ser distintos en el nivel binario. Por ejemplo, en el nivel de tipo, N'a ' es igual a N'A '. Sin embargo, en el nivel binario, N'a ' no es igual a N'A '. El mecanismo de optimización supone incorrectamente que la operación de actualización que cambia el caso no realiza cambios reales. Por lo tanto, la comprobación de PK-FK no se ha realizado correctamente.

Resolución

Información de Service Pack

Para resolver este problema, obtenga el Service Pack más reciente para SQL Server 2005. Para obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:

913089 Cómo obtener el Service Pack más reciente para SQL Server 2005

Estado

Microsoft ha confirmado que se trata de un problema de los productos de Microsoft recogidos en la sección "Se aplica a". Este problema se corrigió por primera vez en SQL Server 2005 Service Pack 3.

Más información

Para obtener más información acerca de la terminología relativa a las actualizaciones de software de Microsoft, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:

824684 Descripción de la terminología estándar utilizada para describir las actualizaciones de software de Microsoft

¿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!

×