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
说明
$dbhandle
,
string $query
[,
string &$error_msg
] ) :
bool
$query
,
resource $dbhandle
) :
bool
面向对象风格 (method):
$query
[,
string &$error_msg
] ) :
bool
Executes an SQL statement given by the query
against a given database handle (specified by the dbhandle
parameter).
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.
参数
-
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: 为兼容其他数据库扩展(比如 MySQL),支持两种可替代的语法。推荐第一种格式,函数的第一个参数是
dbhandle
。
返回值
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().
由 SQLITE_ASSOC
与 SQLITE_BOTH
返回的列名会依照 sqlite.assoc_case 配置选项的值决定大小写。
更新日志
版本 | 说明 |
---|---|
5.1.0 | Added the error_msg parameter |
范例
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();
}
?>
参见
- 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