|
|
(Next) MDB_Common::executeQuery() |
||||
| |
|||||
|
|||||
mixed execute
(
resource $stmt
,
array
$types
= = null
,
array
$params = array()
,
array
$param_types
= = null
)
execute() は、 prepareQuery() のプリペアド SQL ステートメントと 指定したデータを結合し、SQL クエリを実行します。
prepareQuery() から取得したクエリハンドル。
指定した場合は、取得した結果セットのカラムの型を設定します。
クエリに挿入するデータを含む、数値添字の配列。
指定した場合は、$param の値を自動的にその型に設定します。
| エラーコード | エラーメッセージ | 原因 | 対応 |
|---|---|---|---|
| MDB_ERROR_INVALID | NULL | SQL statment handle is not valid. | SQL 文が prepareQuery() で正しく処理できたかどうかを確認します。 execute() が必要としているのは prepareQuery() が返したステートメントハンドルであり、 ステートメント自体ではないことに注意しましょう。 |
| MDB_ERROR_NEED_MORE_DATA | NULL | プリペアド SQL ステートメントに代入するデータが足りません。 | prepareQuery() で処理した SQL 文中のワイルドカードの数を確認します。 また、$data で指定した配列の要素数を確認します。 この要素数は、ワイルドカードの数と一致しなければなりません。 |
| MDB_ERROR_NO_DB_SELECTED | NULL | データベースが選択されていません。 | connect() で指定した DSN を確認します。 |
| その他のすべてのエラーコード | データベース固有のエラー | PHP マニュアル のデータベース関連の章で、エラーの意味を調べます。 たいていの場合は SQL の文法が間違っていることが原因です。 たとえば Oracle データベースの SQL 文で LIMIT を使用していることなどです。 |
This function can not be called statically.
|
|
(Next) MDB_Common::executeQuery() |
||||||||
| |
|||||||||
|
|||||||||