Rechercher une fonction PHP

dbx_query

(PHP 4 >= 4.0.6, PHP 5 < 5.1.0, PECL dbx >= 1.1.0)

dbx_query Sendet eine Abfrage und holt alle Ergebnisse (falls vorhanden)

Beschreibung

dbx_query ( object $link_identifier , string $sql_statement [, int $flags ] ) : mixed

Sendet eine Abfrage und holt alle Ergebnisse.

Erste Seite von PHP-Handbuch Inhaltsverzeichnis Haut

Parameter-Liste

link_identifier

The DBX link object returned by dbx_connect()

sql_statement

SQL statement.

Data inside the query should be properly escaped.

flags

Der Parameter flags wird verwendet, um die Menge der zu liefernden Informationen zu steuern. Die folgenden Konstanten können mit dem Bit-Operator (|) beliebig kombiniert werden. Die Flags DBX_COLNAMES_* heben die Einstellungen dbx.colnames_case in der php.ini auf.

DBX_RESULT_INDEX
Dieses Flag ist immer gesetzt, d.h. das zurückgegebene Objekt hat eine Eigenschaft data, welche aus einem zweidimensionalen, numerisch indizierten Array besteht. Zum Beispiel steht in data[2][3] die 2 für die Reihen- (bzw. Datensatz-) Nummer, und 3 steht für die Spalten- (bzw. Feld- Nummer). Die erste Reihe und Spalte haben den Index 0. Ist DBX_RESULT_ASSOC ebenfalls angegeben, so enthält das zurückgegebene Objekt auch Informationen im Zusammenhang mit DBX_RESULT_INFO, selbst wenn es nicht angegeben wurde.
DBX_RESULT_INFO
It provides info about columns, such as field names and field types.
DBX_RESULT_ASSOC
Dies bewirkt, dass in der data Eigenschaft des zurückgegebenen Objektes auf die Werte eines Feldes mit den entsprechenden Spaltennamen als Schlüssel zugegriffen werden kann. Assoziierte Ergebnisse sind eigentlich Referenzen zu den numerisch indizierten Daten, weshalb eine Änderung von data[0][0] auch den Inhalt von data[0]['feldname_für_erste_spalte'] betrifft.
DBX_RESULT_UNBUFFERED
Dieses Flag unterbindet die Erstellung der data Eigenschaft, und die rows Eigenschaft wird zunächst 0 sein. Das ist für große Datenmengen zu verwenden, wobei mit dbx_fetch_row() die Ergebnisse zeilenweise abgerufen werden. Die dbx_fetch_row() Funktion gibt Zeilen zurück, die mit den mit dieser Abfrage gesetzten Flags konform sind. Übrigens wird auch die rows Eigenschaft bei jedem Aufruf aktualisiert.
DBX_COLNAMES_UNCHANGED
Die Groß-/Kleinschreibung der zurückgegebenen Spaltennamen bleibt unangetastet.
DBX_COLNAMES_UPPERCASE
Die zurückgegebenen Spaltennamen werden in Großbuchstaben gewandelt.
DBX_COLNAMES_LOWERCASE
Die zurückgegebenen Spaltennamen werden in Kleinbuchstaben gewandelt.
Beachten Sie, dass DBX_RESULT_INDEX unabhängig von dem aktuell verwendeten Wert des Parameters flags immer verwendet wird. Das heißt, dass es effektiv nur die folgenden Kombinationen gibt:
  • DBX_RESULT_INDEX
  • DBX_RESULT_INDEX | DBX_RESULT_INFO
  • DBX_RESULT_INDEX | DBX_RESULT_INFO | DBX_RESULT_ASSOC - dies ist Standard, wenn flags nicht angegeben ist.

Erste Seite von PHP-Handbuch Inhaltsverzeichnis Haut

Rückgabewerte

dbx_query() gibt bei Erfolg ein Objekt oder 1 zurück, und 0 im Fehlerfall. Das Objekt wird nur zurückgegeben, wenn die in sql_statement angegebene Abfrage eine Ergebnisliste liefert (d.h. eine SELECT-Abfrage, selbst wenn die Ergebnismenge leer ist).

Das zurückgegebene Objekt hat abhängig von flags vier oder fünf Eigenschaften:

handle

Das ein gültiges Handle für die verbundene Datenbank, und als solches kann es (wenn nötig) auch in modulspezifischen Funktionen verwendet werden.

<?php
$result 
dbx_query($link"SELECT id FROM table");
mysql_field_len($result->handle0);
?>

cols und rows

Diese enthalten die Anzahl der Spalten (oder Felder) bzw. Reihen (oder Datensätze).

<?php
$result 
dbx_query($link'SELECT id FROM table');
echo 
$result->rows// number of records
echo $result->cols// number of fields 
?>

info (optional)
Dies wird nur zurückgegeben, wenn im Parameter flags entweder DBX_RESULT_INFO oder DBX_RESULT_ASSOC spezifiziert sind. Es ist ein zweidimensionales Array mit zwei Reihen (name und type), welches die Spalteninformationen enthält.

Beispiel #1 Auflistung von Name und Typ jedes Feldes

<?php
$result 
dbx_query($link'SELECT id FROM table',
                     
DBX_RESULT_INDEX DBX_RESULT_INFO);

for (
$i 0$i $result->cols$i++ ) {
    echo 
$result->info['name'][$i] . "\n";
    echo 
$result->info['type'][$i] . "\n";  
}
?>
data
Diese Eigenschaft enthält die aktuellen Ergebnisdaten, möglicherweise auch mit den Spaltennamen assoziiert, was jedoch vom Parameter flags abhängig ist. Wenn DBX_RESULT_ASSOC gesetzt ist, kann $result->data[2]["feldname"] verwendet werden.

Beispiel #2 Ausgabe des Inhaltes der data Eigenschaft in eine HTML Tabelle

<?php
$result 
dbx_query($link'SELECT id, parentid, description FROM table');

echo 
"<table>\n";
foreach (
$result->data as $row) {
    echo 
"<tr>\n";
    foreach (
$row as $field) {
        echo 
"<td>$field</td>";
    }
    echo 
"</tr>\n";
}
echo 
"</table>\n";
?>

Beispiel #3 Umgang mit UNGEPUFFERTEN Abfragen

<?php

$result 
dbx_query ($link'SELECT id, parentid, description FROM table'DBX_RESULT_UNBUFFERED);

echo 
"<table>\n";
while (
$row dbx_fetch_row($result)) {
    echo 
"<tr>\n";
    foreach (
$row as $field) {
        echo 
"<td>$field</td>";
    }
    echo 
"</tr>\n";
}
echo 
"</table>\n";

?>

Erste Seite von PHP-Handbuch Inhaltsverzeichnis Haut

Beispiele

Beispiel #4 Wie mit dem gelieferten Wert umgegangen wird

<?php
$link   
dbx_connect(DBX_ODBC"""db""username""password")
    or die(
"Fehler beim Verbinden");

$result dbx_query($link'SELECT id, parentid, description FROM table');

if (
is_object($result)) {
    
// ... tue hier irgendetwas, detaillierte Beispiele siehe unten ...
    // erst die Ausgabe der Feldnamen und Typen
    // dann die Ausgabe einer Tabelle mit den gelieferten Werten
} else {
    exit(
"Abfrage ist fehlgeschlagen");
}

dbx_close($link);
?>

Erste Seite von PHP-Handbuch Inhaltsverzeichnis Haut

Anmerkungen

Hinweis:

Die Modul spezifische Dokumentation sollte ebenfalls konsultiert werden.

Spaltennamen für Anfragen an eine Oracle Datenbank werden in Kleinbuchstaben zurückgegeben.

Erste Seite von PHP-Handbuch Inhaltsverzeichnis Haut

Siehe auch

  • dbx_escape_string() - Maskiert einen String, so dass er sicher in einem SQL-Statement verwendet werden kann
  • dbx_fetch_row() - Liest Zeilen aus einem Abfrageergebnis, das das DBX_RESULT_UNBUFFERED-Flag gesetzt hat
  • dbx_connect() - Öffnet eine Verbindung/Datenbank

Finde eine PHP-Funktion

Deutsche Übersetzung

Sie haben gebeten, diese Seite auf Deutsch zu besuchen. Momentan ist nur die Oberfläche übersetzt, aber noch nicht der gesamte Inhalt.

Wenn Sie mir bei Übersetzungen helfen wollen, ist Ihr Beitrag willkommen. Alles, was Sie tun müssen, ist, sich auf der Website zu registrieren und mir eine Nachricht zu schicken, in der Sie gebeten werden, Sie der Gruppe der Übersetzer hinzuzufügen, die Ihnen die Möglichkeit gibt, die gewünschten Seiten zu übersetzen. Ein Link am Ende jeder übersetzten Seite zeigt an, dass Sie der Übersetzer sind und einen Link zu Ihrem Profil haben.

Vielen Dank im Voraus.

Dokument erstellt 30/01/2003, zuletzt geändert 26/10/2018
Quelle des gedruckten Dokuments:https://www.gaudry.be/de/php-rf-dbx-query.html

Die Infobro ist eine persönliche Seite, deren Inhalt in meiner alleinigen Verantwortung liegt. Der Text ist unter der CreativeCommons-Lizenz (BY-NC-SA) verfügbar. Weitere Informationen auf die Nutzungsbedingungen und dem Autor.

Referenzen

  1. Zeigen Sie - html-Dokument Sprache des Dokuments:fr Manuel PHP : http://php.net

Diese Verweise und Links verweisen auf Dokumente, die während des Schreibens dieser Seite konsultiert wurden, oder die zusätzliche Informationen liefern können, aber die Autoren dieser Quellen können nicht für den Inhalt dieser Seite verantwortlich gemacht werden.
Der Autor Diese Website ist allein dafür verantwortlich, wie die verschiedenen Konzepte und Freiheiten, die mit den Nachschlagewerken gemacht werden, hier dargestellt werden. Denken Sie daran, dass Sie mehrere Quellinformationen austauschen müssen, um das Risiko von Fehlern zu reduzieren.

Inhaltsverzeichnis Haut