Wéi freet d'MySQL Datebank Daten an enger Tabell?Ufro Erklärung / Kommando / Syntax

Wéi kann een Daten aus enger Tabelle an enger MySQL Datebank offroen ? Query Statement/Command/Syntax

MySQL Ufro Daten

MySQL Datenbanken benotzen SQL SELECT Aussoen fir Daten ze froen.

Dir kënnt Daten an der Datebank duerch d'mysql> Kommandopromptfenster ufroen, oder duerch e PHP Skript.

Grammaire

Déi folgend ass déi allgemeng SELECT Syntax fir Daten an enger MySQL Datebank ze froen:

SELECT column_name,column_name
FROM table_name
[WHERE Clause]
[OFFSET M ][LIMIT N]
  • An der Query Ausso kënnt Dir een oder méi Dëscher benotzen, d'Tabellen mat Kommaen trennen (,), a benotzt d'WHERE Ausso fir Ufrobedéngungen ze setzen.
  • De SELECT Kommando kann een oder méi records liesen.
  • Dir kënnt en Asterisk (*) benotzen fir aner Felder ze ersetzen, d'SELECT Ausso gëtt all Felddaten vun der Tabell zréck
  • Dir kënnt d'WHERE Ausso benotze fir all Konditioun opzehuelen.
  • Dir kënnt den Dateoffset spezifizéieren, bei deem d'SELECT Ausso d'Ufro mat OFFSET ufänkt.Par défaut ass den Offset 0.
  • Dir kënnt d'LIMIT Eegeschafte benotzen fir d'Zuel vun den zréckginn records ze setzen.

Kritt Daten iwwer Kommando VIRSCHLOEN

Am folgende Beispill benotze mir de SQL SELECT Kommando fir d'Donnéeën vun der MySQL Datentabelle chenweiliang_tbl ze kréien:

Instanz

Dat folgend Beispill gëtt all records vun der Daten Dësch chenweiliang_tbl zréck:

Liest den Dateblatt:

select * from chenweiliang_tbl;

Benotzt PHP Skript fir Daten ze kréien

Benotzt d'PHP-Funktioun mysqli_query() an den SQL SELECT- Kommando fir Daten ofzeruffen.

Dës Funktioun gëtt benotzt fir SQL-Kommandoen auszeféieren, an dann gëtt d'PHP-Funktioun mysqli_fetch_array() benotzt fir op all déi ofgefrot Donnéeën zouzegräifen oder se auszeginn.

D'Funktioun mysqli_fetch_array() liest eng Zeil aus dem Resultatset als assoziativt Array, als numerescht Array oder béides of, a gëtt en Array zréck, deen aus der Zeil generéiert gouf, déi aus dem Resultatset ofgeruff gouf. Wann et keng weider Zeilen gëtt, gëtt falsch zréck.

Déi folgend Beispill liest all records aus der Daten Dësch chenweiliang_tbl.

Instanz

Probéiert déi folgend Beispill fir all Opzeechnunge vun der Datentabelle chenweiliang_tbl ze weisen.

Benotzt de mysqli_fetch_array MYSQL_ASSOC Parameter fir Daten ze sichen:

<?
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);
?>

 

Am uewe genannte Beispill gëtt all Zeil vu gelies records der Variabel $ Zeil zougewisen, an dann gëtt all Wäert gedréckt.

Bemierkung: Denkt drun, d'Variabel a Klammeren anzeschléissen, wann Dir se an engem String benotze musst.

Am uewe genannten Beispill ass den zweete Parameter vun der PHP mysqli_fetch_array() Funktioun MYSQL_ASSOC . Wann dëse Parameter agestallt gëtt, gëtt en assoziativen Array zréckginn, an Dir kënnt den Numm vum Feld als Index vum Array benotzen.

PHP stellt eng aner Funktioun zur Verfügung, `mysqli_fetch_assoc()` , déi eng Zeil aus dem Resultatset als assoziativt Array ofrufft. Si gëtt en assoziativt Array zréck, baséiert op de Zeilen, déi aus dem Resultatset ofgeruff goufen; wann keng weider Zeilen verfügbar sinn, gëtt falsch zréckginn.

Instanz

Probéiert dëse Beispill, deen d'Funktioun mysqli_fetch_assoc() benotzt fir all Daten aus der Tabelle chenweiliang_tbl auszeginn:

Benotzt mysqli_fetch_assoc fir Daten ze sichen:

<?
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);
?>

Dir kënnt och de konstante MYSQL_NUM als zweete Parameter vun der PHP mysqli_fetch_array () Funktioun benotzen, déi eng Array vun Zuelen zréckginn.

Instanz

Dëst Beispill benotzt de Parameter MYSQL_NUM fir all Daten an der Tabelle chenweiliang_tbl unzeweisen:

Benotzt de mysqli_fetch_array MYSQL_NUM Parameter fir Daten ze sichen:

<?
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);
?>

D'Ausgabresultater vun den uewe genannten dräi Beispiller sinn d'selwecht.


Erënnerung Fräisetzung

Et ass eng gutt Praxis fir Cursor Memory ze befreien nodeems mir eng SELECT Ausso ausgefouert hunn.

D'Erënnerung kann duerch d'PHP Funktioun verëffentlecht ginn mysqli_free_result ().

Déi folgend Beispill weist d'Benotzung vun dëser Funktioun.

Instanz

Probéiert déi folgend Beispiller:

Gratis Erënnerung mat 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);
?>
 

Comments

您的邮箱地址不会被公开。必填项已用*标注

Minière zu Top