Kontroly hodnot argumentů

Správce ovladačů kontroluje následující typy argumentů. Pokud není uvedeno jinak, správce ovladačů vrátí SQL_ERROR pro chyby v hodnotách argumentů.

  • Popisovače prostředí, připojení a příkazů obvykle nemohou být ukazateli null. Správce ovladačů vrátí SQL_INVALID_HANDLE, když najde popisovač null.

  • Argumenty požadovaného ukazatele, například OutputHandlePtr v SQLAllocHandle a CursorName v SQLSetCursorName, nemohou být ukazatele null.

  • Příznaky možností, které nepodporují hodnoty specifické pro ovladač, musí být platnou hodnotou. Operace v SQLSetPos musí být například SQL_POSITION, SQL_REFRESH, SQL_UPDATE, SQL_DELETE nebo SQL_ADD.

  • Příznaky možností musí být podporovány ve verzi rozhraní ODBC podporované ovladačem. Například InfoType v SQLGetInfo nemůže být SQL_ASYNC_MODE (zavedený v ODBC 3.0), když je volán ovladač ODBC 2.0.

  • V závislosti na funkci musí být čísla sloupců a parametrů větší než 0 nebo rovna 0. Ovladač musí zkontrolovat horní limit těchto hodnot argumentů na základě aktuální sady výsledků nebo příkazu SQL.

  • Argumenty délky a indikátoru a argumenty délky vyrovnávací paměti dat musí obsahovat odpovídající hodnoty. Například argument, který určuje délku názvu tabulky v SQLColumns (NameLength3), musí být SQL_NTS nebo hodnota větší než 0; BufferLength v sqlDescribeCol musí být větší nebo rovna 0. Ovladač může také potřebovat zkontrolovat tyto argumenty. Může například zkontrolovat, že název NameLength3 je menší nebo roven maximální délce názvu tabulky ve zdroji dat.