Comparteix via


Errores y los lotes

Cuando se produce un error al ejecutar un lote de instrucciones SQL, uno de los cuatro resultados siguientes es posible. (Cada resultado posible es específico del origen de datos e incluso podría depender de las declaraciones incluidas en el lote).

  • No se ejecutan instrucciones en el lote.

  • No se ejecutan instrucciones en el lote y la transacción se revierte.

  • Todas las instrucciones anteriores a la instrucción de error se ejecutan.

  • Todas las instrucciones excepto la instrucción error se ejecutan.

En los dos primeros casos, SQLExecute y SQLExecDirect devuelven SQL_ERROR. En los dos últimos casos, pueden devolver SQL_SUCCESS_WITH_INFO o SQL_SUCCESS, en función de la implementación. En todos los casos, se puede recuperar más información de error con SQLGetDiagField, SQLGetDiagRec o SQLError. Sin embargo, la naturaleza y la profundidad de esta información son específicas del origen de datos. Además, es poco probable que esta información identifique exactamente la declaración incorrecta.