mixed executeMultiple
(
resource $stmt
,
array
$types
= = null
,
array
$params = array()
,
array
$param_types
= = null
, array $data
)
executeMultiple() は、
prepareQuery()
のプリペアド SQL ステートメントと
指定したデータを結合し、
$data
配列のすべての "行"
について SQL クエリを実行します。
$stmt
prepareQuery() から取得したクエリハンドル。
$types
指定した場合は、取得した結果セットのカラムの型を設定します。
$params
指定した場合は、 prepareQuery()/ executeQuery() はこの配列を実行時のパラメータとします。
$param_types
指定した場合は、$param の値を自動的にその型に設定します。
array $data
クエリに挿入するデータを含む、数値添字の配列。
エラーコード | エラーメッセージ | 原因 | 対応 |
---|---|---|---|
MDB_ERROR_INVALID | NULL | SQL statment handle is not valid. | SQL 文が prepareQuery() で正しく処理できたかどうかを確認します。 executeMultiple() が必要としているのは 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.
実行時にエラーが発生した場合は、関数の処理はそこで終了します。 残りのデータは処理されません。
一般的な使用法や使用例は、 導入 - 実行 を参照ください。