sqlite_query
SQLiteDatabase::query
(PHP 5 < 5.4.0, PECL sqlite >= 1.0.0)
sqlite_query -- SQLiteDatabase::query — Executes a query against a given database and returns a result handle
Description
$dbhandle
, string $query
[, int $result_type
= SQLITE_BOTH
[, string &$error_msg
]] ) : resource$query
, resource $dbhandle
[, int $result_type
= SQLITE_BOTH
[, string &$error_msg
]] ) : resourceObject oriented style (method):
$query
[, int $result_type
= SQLITE_BOTH
[, string &$error_msg
]] ) : SQLiteResult
Executes an SQL statement given by the query
against
a given database handle.
Parameters
-
dbhandle
-
The SQLite Database resource; returned from sqlite_open() when used procedurally. This parameter is not required when using the object-oriented method.
-
query
-
The query to be executed.
Data inside the query should be properly escaped.
-
result_type
-
The optional
result_type
parameter accepts a constant and determines how the returned array will be indexed. UsingSQLITE_ASSOC
will return only associative indices (named fields) whileSQLITE_NUM
will return only numerical indices (ordinal field numbers).SQLITE_BOTH
will return both associative and numerical indices.SQLITE_BOTH
is the default for this function. -
error_msg
-
The specified variable will be filled if an error occurs. This is specially important because SQL syntax errors can't be fetched using the sqlite_last_error() function.
Note: Two alternative syntaxes are supported for compatibility with other database extensions (such as MySQL). The preferred form is the first, where the
dbhandle
parameter is the first parameter to the function.
Return Values
This function will return a result handle or FALSE
on failure.
For queries that return rows, the result handle can then be used with
functions such as sqlite_fetch_array() and
sqlite_seek().
Regardless of the query type, this function will return FALSE
if the
query failed.
sqlite_query() returns a buffered, seekable result handle. This is useful for reasonably small queries where you need to be able to randomly access the rows. Buffered result handles will allocate memory to hold the entire result and will not return until it has been fetched. If you only need sequential access to the data, it is recommended that you use the much higher performance sqlite_unbuffered_query() instead.
Notes
SQLite will execute multiple queries separated by semicolons, so you can use it to execute a batch of SQL that you have loaded from a file or have embedded in a script. However, this works only when the result of the function is not used - if it is used, only the first SQL statement would be executed. Function sqlite_exec() will always execute multiple SQL statements.
When executing multiple queries, the return value of this function
will be FALSE
if there was an error, but undefined otherwise (it might
be TRUE
for success or it might return a result handle).
See Also
- sqlite_unbuffered_query() - Execute a query that does not prefetch and buffer all data
- sqlite_array_query() - Execute a query against a given database and returns an array
English translation
You have asked to visit this site in English. For now, only the interface is translated, but not all the content yet.If you want to help me in translations, your contribution is welcome. All you need to do is register on the site, and send me a message asking me to add you to the group of translators, which will give you the opportunity to translate the pages you want. A link at the bottom of each translated page indicates that you are the translator, and has a link to your profile.
Thank you in advance.
Document created the 30/01/2003, last modified the 26/10/2018
Source of the printed document:https://www.gaudry.be/en/php-rf-sqlite-query.html
The infobrol is a personal site whose content is my sole responsibility. The text is available under CreativeCommons license (BY-NC-SA). More info on the terms of use and the author.
References
These references and links indicate documents consulted during the writing of this page, or which may provide additional information, but the authors of these sources can not be held responsible for the content of this page.
The author This site is solely responsible for the way in which the various concepts, and the freedoms that are taken with the reference works, are presented here. Remember that you must cross multiple source information to reduce the risk of errors.