Updated on 2024-05-07 GMT+08:00

SQLPrepare

Description

Prepares an SQL statement to be executed.

Note that the prepared statements sent by ODBC do not support the kernel reuse plan. 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

Table 1 SQLPrepare 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 were 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.