(PHP 4 >= 4.0.6, PHP 5)
fbsql_query — Sendet eine FrontBase-Abfrage
$Abfrage
[, resource $Verbindungskennung
] )
fbsql_query() sendet eine Abfrage an die momentan
active Datenbank auf dem Server, der mit der Verbindungskennung
spezifiziert ist. Wenn die
Verbindungskennung
nicht angegeben ist, wird die
zuletzt geöffnete Verbindung verwendet. Wenn keine Verbindung offen ist, wird versucht
eine Verbindung aufzubauen. Dies geschieht in der gleichen Weise, als ob fbsql_connect() was
ohne Argumente aufgerufen wird.
Hinweis:
Der Abfrage-String soll immer mit einem Semikolon enden.
fbsql_query() liefert zur Überprüfung des Erfolgs der Abfrage
TRUE
(Nicht NULL) oder FALSE
zurück. Ein TRUE
-Rückgabewert
bestätigt, dass die Abfrage gültig war und vom Server ausgeführt werden konnte.
Über den Rückgabewert können nicht die betroffenen oder selektierten Datensätze ermittelt werden.
Es ist sogar möglich, dass die Abfrage erfolgreich war, aber keine
Datensätze betroffen oder selektiert werden.
Die folgende Abfrage ist syntaktisch falsch, so dass
fbsql_query() fehlschlägt und FALSE
zurückliefert:
Beispiel #1 fbsql_query() Beispiel
<?php
$result = fbsql_query ("SELECT * WHERE 1=1")
or die ("Abfrage gescheitert");
?>
Die folgende Abfrage ist sematisch falsch, wenn
my_col keine Spalte in der Tabelle
my_tbl ist. Deshalb schlägt fbsql_query()
fehl und liefert FALSE
zurück:
Beispiel #2 fbsql_query() example
<?php
$result = fbsql_query ("SELECT my_col FROM my_tbl")
or die ("Abfrage gescheitert");
?>
fbsql_query() schlägt ebenso fehl und liefert
FALSE
, wenn Sie keine Berechtigung zum Zugriff auf die verwiesene(n)
Tabelle(n) haben.
Wenn die Abfrage ist erfolgreich ist, können Sie fbsql_num_rows() aufrufen, um herauszufinden wie viele Datensätze von einer SELECT-Abfrage zurückgeliefert wurde. Falls Sie eine DELETE-, INSERT-, REPLACE- oder UPDATE-Abfrage verwendet haben, können Sie fbsql_affected_rows() verwendet, um die betroffenen Datensätze herauszufinden.
Nur bei SELECT-Abfragen wird fbsql_query() eine neue Ergebniskennung zurück, die Sie an fbsql_result() übergeben können. Wenn die Bearbeitung des Ergebnisses abgeschlossen ist, können Sie die belegten Resourcen durch den Aufruf von fbsql_free_result() freigeben. Bei Scriptende wird der belegte Speicher automatisch freigegeben.
Siehe auch: fbsql_affected_rows(), fbsql_db_query(), fbsql_free_result(), fbsql_result(), fbsql_select_db() und fbsql_connect().