다음을 통해 공유


오류 및 일괄 처리

SQL 문의 일괄 처리를 실행하는 동안 오류가 발생하면 다음 네 가지 결과 중 하나가 가능합니다. (가능한 각 결과는 데이터 원본에 따라 달라지며 일괄 처리에 포함된 문에 따라 달라질 수도 있습니다.)

  • 일괄 처리의 문은 실행되지 않습니다.

  • 일괄 처리의 문이 실행되지 않고 트랜잭션이 롤백됩니다.

  • 오류 문이 실행되기 전의 모든 문입니다.

  • 오류 문을 제외한 모든 문이 실행됩니다.

처음 두 경우 에서 SQLExecuteSQLExecDirect 는 SQL_ERROR 반환합니다. 후자의 두 경우에서는 구현에 따라 SQL_SUCCESS_WITH_INFO 또는 SQL_SUCCESS 반환할 수 있습니다. 모든 경우에 SQLGetDiagField, SQLGetDiagRec 또는 SQLError를 사용하여 추가 오류 정보를 검색할 수 있습니다. 그러나 이 정보의 특성과 깊이는 데이터 원본에 따라 다릅니다. 또한 이 정보는 오류의 문을 정확하게 식별할 가능성이 낮습니다.