sqlite_exec

SQLiteDatabase::exec

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

sqlite_exec -- SQLiteDatabase::exec Führt eine ergebnislose Abfrage in einer definierten Datenbank aus

Beschreibung

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

Objektorientierter Stil (Methode):

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

Führt eine SQL-Anweisung, die durch query gesetzt wurde, mit dem Datenbank-Handle (definiert durch den Parameter dbhandle) aus.

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.

Changelog

Version Beschreibung
5.1.0 Parameter error_msg wurde hinzugefügt

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() - Führt auf einer Datenbank eine Abfrage durch und liefert das Abfrageergebnis zurück
  • sqlite_unbuffered_query() - Führt eine Abfrage aus, aber übernimmt die Daten nicht gleich ins PHP
  • sqlite_array_query() - Führt eine Datenbankabfrage durch und liefert das gesamte Abfrageergebnis als Liste zurück