クエリの結果セット全体を取得し、それを連想配列で返します。 最初のカラムを連想配列のキーとします。 この関数はクエリの実行を行い、終了時に結果を開放します。 結果セットのカラム数が二つより多い場合は、 連想配列の値はカラム 2 から n までの値を持つ配列となります。 結果セットのカラム数がちょうどふたつの場合は、 返される値は二番目のカラムの値を含むスカラーとなります (強制的にこれを配列にするには、パラメータ $force_array を使用します)。
SQL クエリ。
指定した場合は、結果セットのカラムの型が取得時に設定されます。
指定した場合は、 prepareQuery()/ executeQuery() はこの配列を実行時のパラメータとして使用します。
指定した場合は、$param の値が 渡されたデータ型に自動的に設定されます。
使用する取得モード。
クエリがちょうどふたつのカラムを返す場合にのみ使用します。 TRUE にすると、返される配列の値が スカラーではなく一要素の配列となります。
TRUE を設定すると、返り値の配列の値が別の配列でラップされます。 同一のキー (最初のカラムの値) が複数表れた場合に、 それが既存の値を上書きせずに配列に追加されるようになります。
表 39-1PEAR_Error の値
エラーコード | エラーメッセージ | 原因 | 対応 |
---|---|---|---|
MDB_ERROR_INVALID | NULL | 準備した SQL ステートメントが無効です。 | SQL 文でワイルドカードを使用する方法については、 prepareQuery() のドキュメント を参照ください。 |
MDB_ERROR_NEED_MORE_DATA | NULL | プリペアド SQL ステートメントに代入するデータが足りません。 | prepareQuery() で処理した SQL 文中のワイルドカードの数を確認します。 また、$params で指定した配列の要素数を確認します。 この要素数は、ワイルドカードの数と一致しなければなりません。 |
MDB_ERROR_NO_DB_SELECTED | NULL | データベースが選択されていません。 | connect() で指定した DSN を確認します。 |
MDB_ERROR_TRUNCATED | NULL | 結果セットに二つ以上のカラムがありません。 | SQL クエリを調べるか、別の get*() 関数を選択します。 |
その他のすべてのエラーコード | データベース固有のエラー | PHP マニュアル のデータベース関連の章で、エラーの意味を調べます。 たいていの場合は SQL の文法が間違っていることが原因です。 たとえば Oracle データベースの SQL 文で LIMIT を使用していることなどです。 |