array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'de', ), 'this' => array ( 0 => 'function.mysql-db-query.php', 1 => 'mysql_db_query', ), 'up' => array ( 0 => 'ref.mysql.php', 1 => 'MySQL Funktionen', ), 'prev' => array ( 0 => 'function.mysql-db-name.php', 1 => 'mysql_db_name', ), 'next' => array ( 0 => 'function.mysql-drop-db.php', 1 => 'mysql_drop_db', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'de', 'path' => 'reference/mysql/functions/mysql-db-query.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 4, PHP 5)
mysql_db_query — Wählt eine Datenbank aus und führt darauf eine Abfrage aus
Diese Funktion wurde in PHP 5.3.0 als veraltet gekennzeichnet und wurde in PHP 7.0.0 zusammen mit der gesamten ursprünglichen MySQL-Erweiterung entfernt. Stattdessen sollten die aktiv entwickelten Erweiterungen MySQLi oder PDO_MySQL verwendet werden. Weitere Informationen bietet der Ratgeber MySQL: Auswahl einer API. Alternativen zu dieser Funktion umfassen:
mysql_db_query() wählt eine Datenbank aus und führt eine Abfrage darauf aus.
database
Der Name der auszuwählenden Datenbank.
query
Die MySQL-Abfrage.
Die Daten innerhalb der Abfrage sollten korrekt maskiert sein.
link_identifier
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_WARNING
erzeugt.
Gibt eine positive MySQL-Ergebnisressource für das Abfrageergebnis zurück
oder false
im Fehlerfall. Diese Funktion gibt für
INSERT
-, UPDATE
- und
DELETE
-Abfragen ebenfalls true
/false
zurück, um
Erfolg/Misserfolg anzuzeigen.
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 die Datenbank nicht auswählen';
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);
?>
Hinweis:
Beachten Sie, dass diese Funktion NICHT zu der Datenbank zurückwechselt, mit der Sie sich zuvor verbunden hatten. Mit anderen Worten ausgedrückt: Sie können diese Funktion nicht verwenden, um temporär eine SQL-Abfrage auf einer anderen Datenbank auszuführen. Sie müssen selbst (manuell) sicherstellen, dass Sie wieder Ihre vorherige Datenbank verwenden. Sie sollten sich angewöhnen, statt dieser Funktion in Ihren SQL-Abfragen die Schreibweise
datenbank.tabelle
oder die Funktion mysql_select_db() zu verwenden.