Partilhar via


Sequência de registros de status

Se dois ou mais registos de estado forem devolvidos, o Gestor de Condutores e o condutor classificam-nos de acordo com as seguintes regras. O registo com a classificação mais alta é o primeiro registo. A origem de um registo (Gestor de Drivers, driver, gateway, etc.) não é considerada ao classificar os registos.

  • Erros Os registos de estado que descrevem erros têm a classificação mais alta. Entre os registos de erro, os registos que indicam uma falha ou possível falha de transação têm prioridade sobre todos os outros registos. Se dois ou mais registos descreverem a mesma condição de erro, os SQLSTATEs definidos pela especificação Open Group CLI (classes 03 a HZ) superam os SQLSTATES definidos por ODBC e por drivers.

  • Valores de No Data definidos pela implementação Os registos de estado que descrevem valores de No Data definidos pelo condutor (classe 02) têm o segundo ranking mais alto.

  • Avisos Os registos de estado que descrevem avisos (classe 01) têm a classificação mais baixa. Se dois ou mais registos descreverem a mesma condição de aviso, os SQLSTATEs de aviso definidos pela especificação da CLI do Open Group têm prioridade sobre os SQLSTATEs definidos por ODBC e por drivers.

Se existirem dois ou mais registos com a classificação mais alta, não está definido qual registo é o primeiro. A ordem de todos os outros registos é indefinida. Em particular, porque os avisos podem aparecer antes de erros, as aplicações devem verificar todos os registos de estado quando uma função devolve um valor diferente de SQL_SUCCESS.