Wie fragt eine MySQL-Datenbank Daten in einer Tabelle ab?Abfrageanweisung/Befehl/Syntax

MySQL-DatenbankWie werden die Daten in der Tabelle abgefragt?Abfrageanweisung/Befehl/Syntax

MySQL Daten abfragen

MySQL-Datenbanken verwenden SQL SELECT-Anweisungen, um Daten abzufragen.

Sie können Daten in der Datenbank über das mysql>-Eingabeaufforderungsfenster oder über ein PHP-Skript abfragen.

Grammatik

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

SELECT column_name,column_name
FROM table_name
[WHERE Clause]
[OFFSET M ][LIMIT N]
  • In der Abfrageanweisung können Sie eine oder mehrere Tabellen verwenden, die Tabellen durch Kommas (,) trennen und die WHERE-Anweisung verwenden, um Abfragebedingungen festzulegen.
  • Der SELECT-Befehl kann einen oder mehrere Datensätze lesen.
  • Sie können ein Sternchen (*) verwenden, um andere Felder zu ersetzen, die SELECT-Anweisung gibt alle Felddaten der Tabelle zurück
  • Sie können die WHERE-Anweisung verwenden, um eine beliebige Bedingung einzuschließen.
  • Mit OFFSET können Sie den Daten-Offset angeben, bei dem die SELECT-Anweisung die Abfrage startet.Standardmäßig ist der Offset 0.
  • Sie können die LIMIT-Eigenschaft verwenden, um die Anzahl der zurückgegebenen Datensätze festzulegen.

Daten über die Eingabeaufforderung abrufen

Im folgenden Beispiel verwenden wir den SQL SELECT-Befehl, um die Daten der MySQL-Datentabelle chenweiliang_tbl zu erhalten:

Beispiel

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

Lesen Sie das Datenblatt:

select * from chenweiliang_tbl;

Verwenden Sie das PHP-Skript, um Daten abzurufen

Verwendung von PHP-Funktionen mysqli_query() 及 SQL-AUSWAHL Befehl, um die Daten abzurufen.

Diese Funktion wird verwendet, um SQL-Befehle auszuführen und dann PHP-Funktionen zu übergeben mysqli_fetch_array() Daten für alle Abfragen zu verwenden oder auszugeben.

mysqli_fetch_array() Die Funktion ruft eine Zeile aus der Ergebnismenge als assoziatives Array oder als Array von Zahlen oder beides ab. Gibt ein Array zurück, das aus den aus der Ergebnismenge abgerufenen Zeilen generiert wurde, oder false, wenn keine weiteren Zeilen vorhanden sind.

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

Beispiel

Probieren Sie das folgende Beispiel aus, um alle Datensätze der Datentabelle chenweiliang_tbl anzuzeigen.

Verwenden Sie den Parameter mysqli_fetch_array MYSQL_ASSOC, um Daten abzurufen:

<?
php
$dbhost = 'localhost:3306'; // mysql服务器主机地址
$dbuser = 'root'; // mysql用户名
$dbpass = '123456'; // mysql用户名密码
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
 die('连接失败: ' . mysqli_error($conn));
}
// 设置编码,防止中文乱码
mysqli_query($conn , "set names utf8");
 
$sql = 'SELECT chenweiliang_id, chenweiliang_title, 
 chenweiliang_author, submission_date
 FROM chenweiliang_tbl';
 
mysqli_select_db( $conn, 'chenweiliang' );
$retval = mysqli_query( $conn, $sql );
if(! $retval )
{
 die('无法读取数据: ' . mysqli_error($conn));
}
echo '<h2>陈沩亮博客 mysqli_fetch_array 测试<h2>';
echo '<table border="1"><tr><td>教程 ID</td><td>标题</td><td>作者</td><td>提交日期</td></tr>';
while($row = mysqli_fetch_array($retval, MYSQL_ASSOC))
{
 echo "<tr><td> {$row['chenweiliang_id']}</td> ".
 "<td>{$row['chenweiliang_title']} </td> ".
 "<td>{$row['chenweiliang_author']} </td> ".
 "<td>{$row['submission_date']} </td> ".
 "</tr>";
}
echo '</table>';
mysqli_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, dass Sie, wenn Sie eine Variable in einem String verwenden müssen, die Variable in geschweiften Klammern setzen.

Im obigen Beispiel ist der zweite Parameter der PHP-Funktion mysqli_fetch_array() MYSQL_ASSOC, setzen Sie diesen Parameter, um das Ergebnis abzufragen und ein assoziatives Array zurückzugeben, können Sie den Feldnamen als Index des Arrays verwenden.

PHP bietet eine weitere Funktion mysqli_fetch_assoc(), nimmt die Funktion eine Zeile aus der Ergebnismenge als assoziatives Array.Gibt ein assoziatives Array zurück, das aus den Zeilen der Ergebnismenge generiert wurde, oder false, wenn keine weiteren Zeilen vorhanden sind.

Beispiel

Probieren Sie das folgende Beispiel aus, das verwendet mysqli_fetch_assoc() Funktion zur Ausgabe aller Datensätze der Datentabelle chenweiliang_tbl:

Verwenden Sie mysqli_fetch_assoc, um Daten abzurufen:

<?
php
$dbhost = 'localhost:3306'; // mysql服务器主机地址
$dbuser = 'root'; // mysql用户名
$dbpass = '123456'; // mysql用户名密码
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
 die('连接失败: ' . mysqli_error($conn));
}
// 设置编码,防止中文乱码
mysqli_query($conn , "set names utf8");
 
$sql = 'SELECT chenweiliang_id, chenweiliang_title, 
 chenweiliang_author, submission_date
 FROM chenweiliang_tbl';
 
mysqli_select_db( $conn, 'chenweiliang' );
$retval = mysqli_query( $conn, $sql );
if(! $retval )
{
 die('无法读取数据: ' . mysqli_error($conn));
}
echo '<h2>陈沩亮博客 mysqli_fetch_assoc 测试<h2>';
echo '<table border="1"><tr><td>教程 ID</td><td>标题</td><td>作者</td><td>提交日期</td></tr>';
while($row = mysqli_fetch_assoc($retval))
{
 echo "<tr><td> {$row['chenweiliang_id']}</td> ".
 "<td>{$row['chenweiliang_title']} </td> ".
 "<td>{$row['chenweiliang_author']} </td> ".
 "<td>{$row['submission_date']} </td> ".
 "</tr>";
}
echo '</table>';
mysqli_close($conn);
?>

Sie können auch die Konstante MYSQL_NUM als zweiten Parameter der PHP-Funktion mysqli_fetch_array() verwenden, die ein Zahlenarray zurückgibt.

Beispiel

Die folgenden Beispiele verwenden MYSQL_NUM Der Parameter zeigt alle Datensätze der Datentabelle chenweiliang_tbl an:

Verwenden Sie den Parameter mysqli_fetch_array MYSQL_NUM, um Daten abzurufen:

<?
php
$dbhost = 'localhost:3306'; // mysql服务器主机地址
$dbuser = 'root'; // mysql用户名
$dbpass = '123456'; // mysql用户名密码
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
 die('连接失败: ' . mysqli_error($conn));
}
// 设置编码,防止中文乱码
mysqli_query($conn , "set names utf8");
 
$sql = 'SELECT chenweiliang_id, chenweiliang_title, 
 chenweiliang_author, submission_date
 FROM chenweiliang_tbl';
 
mysqli_select_db( $conn, 'chenweiliang' );
$retval = mysqli_query( $conn, $sql );
if(! $retval )
{
 die('无法读取数据: ' . mysqli_error($conn));
}
echo '<h2>陈沩亮博客 mysqli_fetch_array 测试<h2>';
echo '<table border="1"><tr><td>教程 ID</td><td>标题</td><td>作者</td><td>提交日期</td></tr>';
while($row = mysqli_fetch_array($retval, MYSQL_NUM))
{
 echo "<tr><td> {$row[0]}</td> ".
 "<td>{$row[1]} </td> ".
 "<td>{$row[2]} </td> ".
 "<td>{$row[3]} </td> ".
 "</tr>";
}
echo '</table>';
mysqli_close($conn);
?>

Die Ausgabeergebnisse der obigen drei Beispiele sind gleich.


Speicherfreigabe

Es empfiehlt sich, Cursorspeicher freizugeben, nachdem wir eine SELECT-Anweisung ausgeführt haben.

Der Speicher kann über die PHP-Funktion mysqli_free_result() freigegeben werden.

Das folgende Beispiel demonstriert die Verwendung dieser Funktion.

Beispiel

Probieren Sie die folgenden Beispiele aus:

Freier Speicher mit mysqli_free_result:

<?
php
$dbhost = 'localhost:3306'; // mysql服务器主机地址
$dbuser = 'root'; // mysql用户名
$dbpass = '123456'; // mysql用户名密码
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
 die('连接失败: ' . mysqli_error($conn));
}
// 设置编码,防止中文乱码
mysqli_query($conn , "set names utf8");
 
$sql = 'SELECT chenweiliang_id, chenweiliang_title, 
 chenweiliang_author, submission_date
 FROM chenweiliang_tbl';
 
mysqli_select_db( $conn, 'chenweiliang' );
$retval = mysqli_query( $conn, $sql );
if(! $retval )
{
 die('无法读取数据: ' . mysqli_error($conn));
}
echo '<h2>陈沩亮博客 mysqli_fetch_array 测试<h2>';
echo '<table border="1"><tr><td>教程 ID</td><td>标题</td><td>作者</td><td>提交日期</td></tr>';
while($row = mysqli_fetch_array($retval, MYSQL_NUM))
{
 echo "<tr><td> {$row[0]}</td> ".
 "<td>{$row[1]} </td> ".
 "<td>{$row[2]} </td> ".
 "<td>{$row[3]} </td> ".
 "</tr>";
}
echo '</table>';
// 释放内存
mysqli_free_result($retval);
mysqli_close($conn);
?>
 

Hoffnung Chen Weiliang Blog ( https://www.chenweiliang.com/ ) shared "Wie fragt die MySQL-Datenbank die Daten in der Tabelle ab?Abfrageanweisung/Befehl/Syntax“, um Ihnen zu helfen.

Willkommen, um den Link dieses Artikels zu teilen:https://www.chenweiliang.com/cwl-461.html

Willkommen im Telegrammkanal von Chen Weiliangs Blog, um die neuesten Updates zu erhalten!

🔔 Seien Sie der Erste, der den wertvollen „ChatGPT Content Marketing AI Tool Usage Guide“ im Kanal-Top-Verzeichnis erhält! 🌟
📚 Dieser Leitfaden enthält einen enormen Mehrwert. 🌟Dies ist eine seltene Gelegenheit, verpassen Sie sie nicht! ⏰⌛💨
Teilen und liken, wenn es euch gefällt!
Ihr Teilen und Ihre Likes sind unsere ständige Motivation!

 

发表 评论

Deine Email-Adresse wird nicht veröffentlicht. 必填 项 已 已 * 标注

nach oben scrollen