(dbパラメータにより指定した)指定したデータベー スによりqueryで指定したSQLステートメントを実 行します。
レコードを返すクエリの場合、この関数は、結果ハンドルを返します。 このハンドルは、sqlite_fetch_array() や sqlite_seek()のような関数で使用することができま す。
他の種類のクエリの場合、この関数は論理値を返し、成功した場合に TRUE、失敗した場合に FALSE となります。
クエリの型によらず、この関数はクエリが失敗した場合にFALSE を返し ます。
sqlite_query() は、バッファリングされ、シーク可 能な結果ハンドルを返します。これは、レコードにランダムにアクセスす る必要がある小さなクエリの場合に有用です。バッファリングされた結果 ハンドルは、結果全体を保持するためのメモリを確保し、結果が取得され るまでは値を返しません。 データに連続的にアクセスしたい場合、かわりにより高性能な sqlite_unbuffered_query() を使用することが 推奨されます。
注意: (MySQLのような)他のデータベースとの互換性のために別の2種類の構文も サポートされています。最初の構文の方が推奨されます。この場合、 dbパラメータがこの関数の最初のパラメータ となります。
警告 |
SQLiteは、セミコロンで区切られた複数のクエリを実行します。 これにより、ファイルからロードするかスクリプトに埋め込んだSQLをバッ チ実行することができます。 複数のクエリを実行する際、この関数の返り値は、エラーの場合に FALSEとなります。しかし、それ以外の場合は不定となります。 (成功した場合にTRUEとなるか、結果ハンドルを返す可能性があります) |
sqlite_array_query()も参照してください。