SQLBindParameter
Description
Binds parameter markers in an SQL statement to a buffer.
Prototype
1 2 3 4 5 6 7 8 9 10 | SQLRETURN SQLBindParameter(SQLHSTMT StatementHandle, SQLUSMALLINT ParameterNumber, SQLSMALLINT InputOutputType, SQLSMALLINT ValuetType, SQLSMALLINT ParameterType, SQLULEN ColumnSize, SQLSMALLINT DecimalDigits, SQLPOINTER ParameterValuePtr, SQLLEN BufferLength, SQLLEN *StrLen_or_IndPtr); |
Parameters
| Keyword | Description |
|---|---|
| StatementHandle | Statement handle. |
| ParameterNumber | Parameter marker number, starting with 1 and increasing in ascending order. |
| InputOutputType | Input/output type of the parameter. The value can be SQL_PARAM_INPUT, SQL_PARAM_OUTPUT, or SQL_PARAM_INPUT_OUTPUT. |
| ValueType | C data type of the parameter. The value can be SQL_C_CHAR, SQL_C_LONG, or SQL_C_DOUBLE. |
| ParameterType | SQL data type of the parameter. The value can be SQL_CHAR, SQL_INTEGER, or SQL_DOUBLE. |
| ColumnSize | Size of the column or expression of the corresponding parameter marker. |
| DecimalDigits | Decimal digit of the column or the expression of the corresponding parameter marker. |
| ParameterValuePtr | Pointer to the storage parameter buffer. |
| BufferLength | Length of the ParameterValuePtr buffer in bytes. |
| StrLen_or_IndPtr | Pointer to the length or indicator of the buffer. If the value is null, no length or indicator is used. |
Return Values
- SQL_SUCCESS indicates that the call succeeded.
- SQL_SUCCESS_WITH_INFO indicates that some warning information is displayed.
- SQL_ERROR indicates major errors, such as memory allocation and connection failures.
- SQL_INVALID_HANDLE indicates that invalid handles were called. This value may also be returned by other APIs.
Precautions
If SQLBindParameter returns SQL_ERROR or SQL_SUCCESS_WITH_INFO, the application can call SQLGetDiagRec, with HandleType and Handle set to SQL_HANDLE_STMT and StatementHandle, respectively, to obtain the SQLSTATE value. The SQLSTATE value provides the detailed function calling information.
Examples
For details, see Typical Application Development Examples.