sqlite_exec
SQLiteDatabase::exec
(PHP 5 < 5.4.0, PECL sqlite >= 1.0.3)
sqlite_exec -- SQLiteDatabase::exec — Выполняет запрос, не возвращающий записей
Описание
$dbhandle
, string $query
[, string &$error_msg
] ) : bool$query
, resource $dbhandle
) : boolОбъектно-ориентированный стиль (метод):
$query
[, string &$error_msg
] ) : bool
Выполняет запрос query
к базе данных, идентификатор
которой задан аргументом dbhandle
.
SQLite выполнит несколько запросов, разделенных точкой с запятой, за один вызов функции. Это можно использовать, например, для выполнения запросов, прочитанных из файла.
Список параметров
-
dbhandle
-
Ресурс базы данных SQLite, полученный из функции sqlite_open() в случае использования процедурного подхода. Этот параметр не требуется при использовании объектно-ориентированного подхода.
-
query
-
Выполняемый запрос.
Данные в запросе должны быть корректно экранированы.
-
error_msg
-
Данная переменная будет заполнена текстом ошибки, если таковая произойдет. Это особенно важно, потому что синтаксические ошибки SQL не могут быть получены из функции sqlite_last_error().
Замечание: Поддерживаются два альтернативных синтаксиса для совместимости с другими расширениями баз данных (например, MySQL). Предпочитаемая форма - первая, в которой параметр
dbhandle
является первым параметром функции.
Возвращаемые значения
Функция возвращает булевый результат: TRUE
в случае успешного выполнения
и FALSE
в случае возникновения ошибки.
Если вам необходимо запустить запрос, возвращающий результат,
используйте функцию sqlite_query().
Имена столбцов, возвращаемые
SQLITE_ASSOC
и SQLITE_BOTH
, будут
приведены к нужному регистру согласно значению конфигурационной опции
sqlite.assoc_case.
Список изменений
Версия | Описание |
---|---|
5.1.0 |
Добавлен параметр error_msg
|
Примеры
Пример #1 Пример с использованием процедурного стиля
<?php
$dbhandle = sqlite_open('mysqlitedb');
$query = sqlite_exec($dbhandle, "UPDATE users SET email='jDoe@example.com' WHERE username='jDoe'", $error);
if (!$query) {
exit("Ошибка в запросе: '$error'");
} else {
echo 'Количество затронутых рядов: ', sqlite_changes($dbhandle);
}
?>
Пример #2 Объектно-ориентированный стиль
<?php
$dbhandle = new SQLiteDatabase('mysqlitedb');
$query = $dbhandle->queryExec("UPDATE users SET email='jDoe@example.com' WHERE username='jDoe'", $error);
if (!$query) {
exit("Ошибка в запросе: '$error'");
} else {
echo 'Количество затронутых рядов: ', $dbhandle->changes();
}
?>
Смотрите также
- sqlite_query() - Выполняет запрос к базе данных и возвращает идентификатор результата
- sqlite_unbuffered_query() - Выполняет запрос без буферизации результатов
- sqlite_array_query() - Выполняет запрос к базе данных и возвращает результат в виде массива