sqlite_exec
SQLiteDatabase::exec
Führt eine ergebnislose Abfrage in einer definierten Datenbank aus
Beschreibung
bool sqlite_exec
( resource $dbhandle
, string $query
[, string &$error_msg
] )
bool sqlite_exec
( string $query
, resource $dbhandle
)
public bool SQLiteDatabase::queryExec
( string $query
[, string &$error_msg
] )
Warnung
SQLite kann mehrere, durch Semikolon getrennte
Anweisungen ausführen. Dadurch kann man eine Reihe von Anweisungen aus
einer Datei oder einem eingebetteten Skript laden und ausführen.
Parameter-Liste
-
dbhandle
-
Die Ressource der SQLite-Datenbank, die bei prozeduraler Benutzung von
sqlite_open zurückgegeben wurden. Der Parameter
wird bei der objektorientierten Notation nicht benötigt.
-
query
-
Die auszuführende Anweisung.
Daten innerhalb einer Anfrage sollten maskiert werden.
-
error_msg
-
Die angegebene Variable wird bei einem Fehler gefüllt. Das ist
insbesondere deswegen wichtig, weil SQL-Syntaxfehler nicht durch die
Funktion sqlite_last_error abgerufen werden können.
Hinweis: Zwei alternative Syntaxen werden
für die Kompatibilität mit anderen Datenbank-Erweiterungen (wie z.B. MySQL)
unterstützt. Die bevorzugte Form ist die erste, bei der der Parameter
dbhandle der erste Parameter der Funktion
ist.
Rückgabewerte
Die Funktion liefert ein boolsches Ergebnis; TRUE bei Erfolg, ansonsten
FALSE. Wenn man eine Abfrage ausführen möchte, die Zeilen zurück liefern
soll, sollte man bei sqlite_query gucken.
Die Groß- und Kleinschreibung der
Spaltennamen, die von SQLITE_ASSOC und
SQLITE_BOTH zurückgegeben werden, wird entsprechend der
Konfigurationsdirektive sqlite.assoc_case geändert.
Beispiele
Beispiel #1 Prozedurales Beispiel
<?php
$dbhandle = sqlite_open('mysqlitedb');
$query = sqlite_exec($dbhandle, "UPDATE benutzer SET email='jDoe@example.com' WHERE benutzername='jDoe'", $error);
if (!$query) {
exit("Fehler in der Abfrage: '$error'");
} else {
echo 'Anzahl geänderter Zeilen: ', sqlite_changes($dbhandle);
}
?>
Beispiel #2 Objektorientiertes Beispiel
<?php
$dbhandle = new SQLiteDatabase('mysqlitedb');
$query = $dbhandle->queryExec("UPDATE benutzer SET email='jDoe@example.com' WHERE benutzername='jDoe'", $error);
if (!$query) {
exit("Fehler in der Abfrage: '$error'");
} else {
echo 'Anzahl geänderter Zeilen: ', $dbhandle->changes();
}
?>
Siehe auch
- sqlite_query
- sqlite_unbuffered_query
- sqlite_array_query