Reading through the Microsoft Implementation of ODBC header file sql.h
, the parameters of almost all the declarations of the APIs are qualified with __IN__
or __OUT__
.
Example
SQLRETURN SQL_API SQLRowCount(_In_ SQLHSTMT StatementHandle,
_Out_ SQLLEN* RowCount);
I understand, such usage is usually used to determined the direction for transport optimization particularly used in COM world where data needs to be marshaled and UN-marshalled but such usage seems odd in ODBC context.
What is the significance of these qualifiers from ODBC perspective?