¿En qué etapa comprueba SqlBulkCopy las restricciones?

constraints sqlbulkcopy sql-server-2005

Pregunta

Si la opción SqlBulkCopyOptions.CheckConstraints está establecida para la inserción de SqlBulkCopy, ¿comprueba las restricciones por separado después de cada registro o después de insertar todos los registros?

Tengo una restricción de verificación que compara algunas columnas con la fila principal (a través de un UDF). Estoy utilizando MS Sql Server 2005. La documentación en http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlbulkcopyoptions.aspx solo dice "Verificar restricciones mientras se están insertando datos".

En mis pruebas, parece que las claves externas no se verifican hasta el final, pero las restricciones de verificación se verifican para cada fila antes de agregar la siguiente. Esto suena bastante extraño. No he encontrado ninguna documentación sobre esto.

Respuesta popular

No estoy seguro, si entiendo esto completamente.

Pero, eso podría ser debido a la transacción en su lugar. Puede verificar las restricciones de clave externa, cuando esté listo para confirmar, en comparación con las restricciones de columna que se pueden verificar de forma independiente (algo).



Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué
Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué