Partage via


Erreurs et lots

Lorsqu’une erreur se produit lors de l’exécution d’un lot d’instructions SQL, l’un des quatre résultats suivants est possible. (Chaque résultat possible est spécifique à la source de données et peut même dépendre des instructions incluses dans le lot.)

  • Aucune instruction dans le lot n’est exécutée.

  • Aucune instruction dans le lot n’est exécutée et la transaction est restaurée.

  • Toutes les instructions avant l’exécution de l’instruction d’erreur.

  • Toutes les instructions à l’exception de l’instruction d’erreur sont exécutées.

Dans les deux premiers cas, SQLExecute et SQLExecDirect retournent SQL_ERROR. Dans les deux derniers cas, ils peuvent retourner SQL_SUCCESS_WITH_INFO ou SQL_SUCCESS, en fonction de l’implémentation. Dans tous les cas, d’autres informations d’erreur peuvent être récupérées avec SQLGetDiagField, SQLGetDiagRec ou SQLError. Toutefois, la nature et la profondeur de ces informations sont spécifiques à la source de données. En outre, ces informations ne sont pas susceptibles d’identifier exactement l’instruction en erreur.