Heim  >  Artikel  >  Datenbank  >  MySQL-Abfragedaten

MySQL-Abfragedaten

巴扎黑
巴扎黑Original
2016-12-07 13:18:191210Durchsuche

Die MySQL-Datenbank verwendet die SQL-SELECT-Anweisung zum Abfragen von Daten.

Sie können Daten in der Datenbank über das MySQL-Eingabeaufforderungsfenster oder über PHP-Skripte abfragen.

Das Folgende ist die allgemeine SELECT-Syntax zum Abfragen von Daten in MySQL-Datenbanken:

SELECT Spaltenname, Spaltenname
FROM Tabellenname[WHERE-Klausel][OFFSET M ][LIMIT N]

Sie können eine oder mehrere Tabellen in der Abfrageanweisung verwenden. Verwenden Sie Kommas (,), um die Tabellen zu trennen, und verwenden Sie die WHERE-Anweisung, um die Abfragebedingungen festzulegen.

Der SELECT-Befehl kann einen oder mehrere Datensätze lesen.

Sie können ein Sternchen (*) verwenden, um andere Felder zu ersetzen, und die SELECT-Anweisung gibt alle Felddaten in der Tabelle zurück.

Sie können die WHERE-Anweisung verwenden, um jede beliebige Bedingung einzuschließen.

Mit OFFSET können Sie den Datenoffset angeben, bei dem die SELECT-Anweisung mit der Abfrage beginnt. Standardmäßig ist der Offset 0.

Sie können das LIMIT-Attribut verwenden, um die Anzahl der zurückgegebenen Datensätze festzulegen.

Daten über die Eingabeaufforderung abrufen

Das folgende Beispiel gibt alle Datensätze der Datentabelle runoob_tbl zurück:

[root@localhost runoob]# mysql -u root -pPasswort eingeben :
Willkommen beim MariaDB-Monitor. Befehle enden mit ; ​​oder g.
Ihre MariaDB-Verbindungs-ID ist 2
Serverversion: 5.5.50-MariaDB MariaDB Server

Copyright (c) 2000 , 2016, Oracle, MariaDB Corporation Ab und andere.

Geben Sie „help;“ oder „h“ für Hilfe ein. Geben Sie „c“ ein, um die aktuelle Eingabeanweisung zu löschen.

MariaDB [(none ) ]> Verwenden Sie RUNOOB, um Tabellen- und Spaltennamen zu vervollständigen.
Sie können diese Funktion deaktivieren, um einen schnelleren Start zu erzielen.

Datenbank geändert
MariaDB [RUNOOB]> * von runoob_tbl
->+-----------+---------------+----------- - ---+----+
|. runoob_title |
+--------- -+ ---------------+---------------+---------------- --+
|. John Poul |. 2016-11-26 | -05 -06 |
|. cakin24 |. --------- +------------------+-----------------+4 Reihen in set (0,00 Sek.)

MariaDB [RUNOOB]>


Verwenden Sie ein PHP-Skript, um Daten abzurufen

Methode 1:

Zuerst verwenden PHP-Funktion mysql_query() und SQL-SELECT-Befehl zum Abrufen von Daten, die Funktion mysql_query wird zum Ausführen von SQL-Befehlen verwendet.

Anschließend werden die abgefragten Daten über die PHP-Funktion mysql_fetch_array() verarbeitet.

Die Funktion mysql_fetch_array() ruft eine Zeile aus der Ergebnismenge als assoziatives Array, numerisches Array oder beides ab. Gibt ein Array zurück, das aus den aus der Ergebnismenge erhaltenen Zeilen generiert wird, oder false, wenn keine Abfrageergebnisse vorhanden sind.

Das folgende Beispiel liest alle Datensätze aus der Datentabelle runoob_tbl.

Versuchen Sie das folgende Beispiel, um alle Datensätze der Datentabelle runoob_tbl anzuzeigen.

$dbhost = 'localhost:3036';$dbuser = 'root';

$dbpass = 'rootpassword';
$conn = mysql_connect( $dbhost, $dbuser, $dbpass);
if(! $conn )
{
die('Verbindung konnte nicht hergestellt werden: ' . mysql_error());
}
$sql = 'SELECT runoob_id, runoob_title,
runoob_author, subscription_date
FROM runoob_tbl';

mysql_select_db('RUNOOB');
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
die('Daten konnten nicht abgerufen werden: ' . mysql_error());
}
while($row = mysql_fetch_array($retval, MYSQL_ASSOC))
{
echo "Tutorial-ID:{$row['runoob_id']}
".
"Titel: {$row['runoob_title']}
".
" Autor: {$row['runoob_author']}
".
"Einreichungsdatum: {$row['submission_date']}
----------------------
";
}
echo „Daten erfolgreich abgerufen“;
mysql_close( $conn) ;
?>


Im obigen Beispiel wird jede Zeile gelesener Datensätze der Variablen $row zugewiesen und dann wird jeder Wert ausgedruckt.

Hinweis: Denken Sie daran, wenn Sie eine Variable in einer Zeichenfolge verwenden müssen, setzen Sie die Variable in geschweifte Klammern.

Im obigen Beispiel ist der zweite Parameter der PHP-Funktion mysql_fetch_array() MYSQL_ASSOC. Wenn dieser Parameter festgelegt ist, geben die Abfrageergebnisse ein assoziatives Array zurück. Sie können den Feldnamen als Index verwenden Array.

Methode 2:

PHP bietet eine weitere Funktion mysql_fetch_assoc(), die eine Zeile aus der Ergebnismenge als assoziatives Array abruft. Gibt ein assoziatives Array zurück, das auf den aus der Ergebnismenge entnommenen Zeilen basiert, oder false, wenn keine weiteren Zeilen vorhanden sind.

Das folgende Beispiel verwendet die Funktion mysql_fetch_assoc(), um alle Datensätze der Datentabelle runoob_tbl auszugeben:

$dbhost = 'localhost:3036';
$dbuser = 'root';
$dbpass = 'rootpassword';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
die ('Verbindung konnte nicht hergestellt werden: ' . mysql_error());
}
$sql = 'SELECT runoob_id, runoob_title,
runoob_author, subscription_date
FROM runoob_tbl';

mysql _select_db( 'RUNOOB');
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
die('Daten konnten nicht abgerufen werden: ' . mysql_error ()) ;
}
while($row = mysql_fetch_assoc($retval))
{
echo "Tutorial ID :{$row['runoob_id']}
".
" Titel: {$row['runoob_title']}
".
"Autor: {$row['runoob_author']}
".
"Einreichungsdatum: {$ row['submission_date']}
".
" "--------------------------------
";
}
echo „Daten erfolgreich abgerufen“;
mysql_close($conn);
?>

Methode 3:

Sie können die Konstante MYSQL_NUM auch als zweiten Parameter der PHP-Funktion mysql_fetch_array() verwenden, um ein numerisches Array zurückzugeben.

Das folgende Beispiel verwendet den Parameter MYSQL_NUM, um alle Datensätze der Datentabelle runoob_tbl anzuzeigen:

$dbhost = 'localhost:3036';
$dbuser = 'root' ;
$dbpass = 'rootpassword';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
die ('Verbindung konnte nicht hergestellt werden: ' . mysql_error());
}
$sql = 'SELECT runoob_id, runoob_title,
runoob_author, subscription_date
FROM runoob_tbl';

mysql_select_d b ('RUNOOB') ;
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
die('Daten konnten nicht abgerufen werden: ' . mysql_error() );
}
while($row = mysql_fetch_array($retval, MYSQL_NUM))
{
echo "Tutorial ID :{$row[0]}
".
"Titel: {$row[1]}
".
"Autor: {$row[2]}
".
"Einreichungsdatum: {$row[3]} < ;br> ".
"--------------------------------
";
}
echo „Daten erfolgreich abgerufen“;
mysql_close($conn);
?>

Die Ausgabeergebnisse der obigen drei Beispiele sind die gleichen lauten wie folgt:

MySQL-Abfragedaten

Speicherfreigabe

Nachdem wir die SELECT-Anweisung ausgeführt haben, ist es eine gute Angewohnheit, den Cursorspeicher freizugeben. Die Speicherfreigabe kann über die PHP-Funktion mysql_free_result() erreicht werden.

Das folgende Beispiel demonstriert die Verwendung dieser Funktion. Dieses Beispiel fügt nur die Anweisung mysql_free_result($retval); basierend auf dem vorherigen Beispiel hinzu.

$dbhost = 'localhost:3036';
$dbuser = 'root';
$dbpass = 'rootpassword';
$conn = mysql_connect( $dbhost, $dbuser, $dbpass);
if(! $conn )
{
die('Konnte keine Verbindung herstellen: ' . mysql_error());
}
$sql = 'SELECT runoob_id, runoob_title,
runoob_author, subscription_date
FROM runoob_tbl';

mysql_select_db('RUNOOB');$retval = mysql_query( $sql, $conn );
if(! $retval )
{
die('Daten konnten nicht abgerufen werden: ' . mysql_error());
}
while($row = mysql_fetch_array($retval, MYSQL_NUM))
{
echo "Tutorial-ID: {$row[0]}
".
"Titel: {$row[1]}
".
"Autor: {$row[2 ]}
".
" "Einreichungsdatum: {$row[3]}
".
" "---------------- --------------
";
}mysql_free_result($retval);echo "Daten erfolgreich abgerufenn";
mysql_close($conn);
? >


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn