Compartir por


Asignación de SQLSetParam

SQLSetParam se sigue asignando encima de SQLBindParameter como en ODBC 2. x. Aunque conceptualmente es similar a SQLBindParam, el Administrador de controladores no asigna SQLSetParam a SQLBindParam. Esto se debe a que hay cierto ODBC 2 existente. Los controladores x usan el valor especial de BufferLength (SQL_SETPARAM_VALUE_MAX) que el Administrador de controladores genera cuando asigna SQLSetParam encima de SQLBindParameter para determinar cuándo llama un 1. x aplicación ODBC.

Una llamada a

SQLSetParam(hstmt, ipar, fCType, fSqlType, cbColDef, ibScale, rgbValue, pcbValue)  

dará como resultado lo siguiente:

SQLBindParameter(StatementHandle, ParameterNumber, SQL_PARAM_INPUT_OUTPUT, ValueType, ParameterType, ColumnSize, DecimalDigits, ParameterValuePtr, SQL_SETPARAM_VALUE_MAX, StrLen_or_IndPtr)