SQLExecDirect 関数は、SQL 文を準備して実行します。文には、パラメーターを指定することもできます。
次のコードフラグメントは、パラメーターを指定しないで文を実行する方法を示します。SQLExecDirect 関数は、ステートメントハンドル、SQL 文字列、長さまたは終了インジケーターをパラメーターに取ります。この場合、終了インジケーターは NULL で終了された文字列インジケーターです。
この項で説明する手順は単純ですが、柔軟性がありません。アプリケーションでは、ユーザーの入力によってこの文を修正できません。より柔軟に文を構成する方法については、バウンドパラメーターを使用した文の実行を参照してください。
SQLAllocHandle を使用して文にハンドルを割り付けます。
たとえば、次の文はハンドル dbc
を使用した接続時に、stmt
という名前の SQL_HANDLE_STMT
型のハンドルを割り付けます。
SQLAllocHandle( SQL_HANDLE_STMT, dbc, &stmt ); |
SQLExecDirect 関数を呼び出して文を実行します。
たとえば、次の行は文を宣言して実行します。通常、deletestmt
の宣言は関数の先頭で行います。
SQLCHAR deletestmt[ STMT_LEN ] = "DELETE FROM Departments WHERE DepartmentID = 201"; SQLExecDirect( stmt, deletestmt, SQL_NTS) ; |
エラーチェックを含む完全なサンプルについては、%SQLANYSAMP12%\SQLAnywhere\ODBCExecute\odbcexecute.cpp を参照してください。
SQLExecDirect の詳細については、 http://msdn.microsoft.com/en-us/library/ms713611.aspxにある Microsoft の『ODBC API Reference』の「SQLExecDirect」を参照してください。
![]() |
DocCommentXchange で意見交換できます
|
Copyright © 2012, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.1 |