(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
] )$query
, resource $dbhandle
)物件導向風格 (method):
$query
[, string &$error_msg
] )
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();
}
?>