SQLPrepare
Description
Prepares an SQL statement to be executed.
Note that ODBC does not support the kernel reuse plan when sending prepared statements. As a result, a new plan needs to be generated for each execution, causing high CPU usage. If services have requirements on plan reuse, you are advised to use the JDBC client.
Prototype
1 2 3 | SQLRETURN SQLPrepare(SQLHSTMT StatementHandle, SQLCHAR *StatementText, SQLINTEGER TextLength); |
Parameters
| Keyword | Description |
|---|---|
| StatementHandle | Statement handle. |
| StatementText | SQL text string. |
| TextLength | Length of StatementText. |
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 are called. This value may also be returned by other APIs.
- SQL_STILL_EXECUTING indicates that the statement is being executed.
Precautions
If SQLPrepare 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
See Examples.