mysql_db_query
(PHP 4, PHP 5)
mysql_db_query — Selektiert ein Schema und führt in ihm Anfrage aus
Diese Funktion wurde in PHP 5.3.0 als veraltet gekennzeichnet und wird in der Zukunft zusammen mit der gesamten ursprünglichen MySQL-Erweiterung entfernt werden. Stattdessen sollten die Erweiterungen MySQLi oder PDO_MySQL verwendet werden. Weitere Informationen finden Sie im Ratgeber MySQL: Auswahl einer API und den zugehörigen FAQ. Alternativen zu dieser Funktion umfassen:
- mysqli_select_db() gefolgt vom Query
- PDO::__construct()
Beschreibung
$database
, string $query
[, resource $link_identifier = NULL
] )mysql_db_query() selektiert ein Schema und führt in ihm eine Anfrage aus.
Parameter-Liste
-
database -
Der Name des zu selektierenden Schemas.
-
query -
Die MySQL Abfrage.
Daten innerhalb der Abfrage sollten korrekt maskiert sein.
-
Verbindungs-Kennung -
Die MySQL-Verbindung. Wird die Verbindungskennung nicht angegeben, wird die letzte durch mysql_connect() geöffnete Verbindung angenommen. Falls keine solche Verbindung gefunden wird, wird versucht, eine Verbindung aufzubauen, wie es beim Aufruf von mysql_connect() ohne Angabe von Argumenten der Fall wäre. Falls zufällig keine Verbindung gefunden oder aufgebaut werden kann, wird eine Warnung der Stufe
E_WARNINGerzeugt.
Rückgabewerte
Rückgabewert: Eine positive MySQL Ergebnis-Resource für das
Anfrageergebnis, oder FALSE im Fehlerfall. Diese Funktion gibt
für INSERT/UPDATE/DELETE
Queries ebenfalls TRUE/FALSE zurück, um Erfolg/Misserfolg anzuzeigen.
Changelog
| Version | Beschreibung |
|---|---|
| 5.3.0 | Diese Funktion löst nun eine E_DEPRECATED Warnung aus. |
Beispiele
Beispiel #1 mysql_db_query() Alternativbeispiel
<?php
if (!$link = mysql_connect('mysql_host', 'mysql_user', 'mysql_password')) {
echo 'Keine Verbindung zu mysql';
exit;
}
if (!mysql_select_db('mysql_dbname', $link)) {
echo 'Konnte Schema nicht selektieren';
exit;
}
$sql = 'SELECT foo FROM bar WHERE id = 42';
$result = mysql_query($sql, $link);
if (!$result) {
echo "DB Fehler, konnte die Datenbank nicht abfragen\n";
echo 'MySQL Error: ' . mysql_error();
exit;
}
while ($row = mysql_fetch_assoc($result)) {
echo $row['foo'];
}
mysql_free_result($result);
?>
Anmerkungen
Hinweis:
Beachten Sie, dass diese Funktion NICHT zu der Datenbank zurückwechselt, mit der Sie sich zuvor verbunden hatten. In anderen Worten ausgedrückt: Sie können diese Funktion nicht benutzen, um temporär eine SQL-Query auf einer anderen Datenbank auszuführen. Sie müssen selbst (manuell) sicherstellen, dass Sie wieder Ihre vorherige Datenbank benutzen. Sie sollten sich angewöhnen in Ihren SQL-Queries die Schreibweise schema.tabelle oder mysql_select_db() zu verwenden statt diese Funktion zu benutzen.
Siehe auch
- mysql_query() - Sendet eine Anfrage an MySQL
- mysql_select_db() - Auswahl einer MySQL Datenbank