# sqlite_exec

# SQLiteDatabase::exec

(PHP 5 < 5.4.0, PECL sqlite >= 1.0.3)

sqlite_exec -- SQLiteDatabase::exec — Executes a result-less query against a given database

### Description

sqlite_exec ( resource `$dbhandle` , string `$query` [, string `&$error_msg` ] ) : bool
sqlite_exec ( string `$query` , resource `$dbhandle` ) : bool

Object oriented style (method):

public SQLiteDatabase::queryExec ( string `$query` [, string `&$error_msg` ] ) : bool

Executes an SQL statement given by the `query` against a given database handle (specified by the `dbhandle` parameter).

Warning

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.

### 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.

`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 boolean result; `TRUE` for success or `FALSE` for failure. If you need to run a query that returns rows, see sqlite_query().

The column names returned by `SQLITE_ASSOC` and `SQLITE_BOTH` will be case-folded according to the value of the sqlite.assoc_case configuration option.

### Changelog

Version | Description
--- | ---
5.1.0 | Added the `error_msg` parameter

### Examples

Example #1 Procedural example

`<?php
$dbhandle = sqlite_open('mysqlitedb');
$query = sqlite_exec($dbhandle, "UPDATE users SET email='jDoe@example.com' WHERE username='jDoe'", $error);
if (!$query) {
exit("Error in query: '$error'");
} else {
echo 'Number of rows modified: ', sqlite_changes($dbhandle);
}
?>`

Example #2 Object-oriented example

`<?php
$dbhandle = new SQLiteDatabase('mysqlitedb');
$query = $dbhandle->queryExec("UPDATE users SET email='jDoe@example.com' WHERE username='jDoe'", $error);
if (!$query) {
exit("Error in query: '$error'");
} else {
echo 'Number of rows modified: ', $dbhandle->changes();
}
?>`

### See Also

- sqlite_query() - Executes a query against a given database and returns a result handle
- 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