Sdílet prostřednictvím


Diagnostické zprávy

Každá funkce SQLSTATE vrátí diagnostickou zprávu. Stejný stav SQLSTATE se často vrací s řadou různých zpráv. Například SQLSTATE 42000 (chyba syntaxe nebo přístupová chyba) se vrátí pro většinu chyb v syntaxi SQL. Každá chyba syntaxe je ale pravděpodobně popsaná jinou zprávou.

Ukázkové diagnostické zprávy jsou uvedeny ve sloupci Chyba v tabulce SQLSTATEs v dodatku A a v každé funkci. I když ovladače můžou tyto zprávy vrátit, pravděpodobně vrátí zprávu, kterou jim předá zdroj dat.

Aplikace obvykle zobrazují uživatelům diagnostické zprávy spolu s kódem SQLSTATE a nativním kódem chyby. To pomáhá uživatelům a pracovníkům podpory určit příčinu jakýchkoli problémů. Informace o komponentě vložené do zprávy jsou obzvláště užitečné při provádění tohoto úkolu.

Diagnostické zprávy pocházejí ze zdrojů dat a součástí připojení ODBC, jako jsou ovladače, brány a Správce ovladačů. Zdroje dat obvykle nepodporují rozhraní ODBC přímo. V důsledku toho, pokud komponenta v připojení ODBC obdrží zprávu ze zdroje dat, musí identifikovat zdroj dat jako zdroj zprávy. Musí se také identifikovat jako součást, která zprávu přijala.

Pokud je zdrojem chyby nebo upozornění samotná komponenta, musí to diagnostická zpráva vysvětlit. Text zpráv má proto dva různé formáty. V případě chyb a upozornění, ke kterým ve zdroji dat nedojde, musí diagnostická zpráva použít tento formát:

[vendor-identifier][ODBC-component-identifier]component-supplied-text

V případě chyb a upozornění, ke kterým dochází ve zdroji dat, musí diagnostická zpráva použít tento formát:

[vendor-identifier][ODBC-component-identifier][data-source-identifier]data-source-supplied-text

Následující tabulka ukazuje význam jednotlivých prvků.

prvek Meaning
vendor-identifier Identifikuje dodavatele komponenty, ve které došlo k chybě nebo upozornění nebo které obdrželo chybu nebo upozornění přímo ze zdroje dat.
Identifikátor ODBC-komponenty Identifikuje komponentu, ve které došlo k chybě nebo upozornění nebo která obdržela chybu nebo upozornění přímo ze zdroje dat.
identifikátor zdroje dat Identifikuje zdroj dat. U ovladačů založených na souborech se obvykle jedná o formát souboru, například Xbase[1] U ovladačů založených na DBMS se jedná o produkt DBMS.
text zadaný komponentou Generuje se komponentou ODBC.
data-source-supplied-text Vygenerováno zdrojem dat.

[1] V tomto případě ovladač funguje jako ovladač i zdroj dat.

Do zprávy musí být zahrnuty hranaté závorky ([ ]) a neindikují volitelné položky.