Hoe freget in MySQL-database gegevens yn in tabel?Query Statement / Kommando / Syntaksis

MySQL databankHoe kinne jo de gegevens yn 'e tabel freegje?Query Statement / Kommando / Syntaksis

MySQL Query gegevens

MySQL-databases brûke SQL SELECT-útspraken om gegevens te freegjen.

Jo kinne gegevens opfreegje yn 'e databank fia it mysql> kommando-prompt-finster, of fia in PHP-skript.

grammatika

It folgjende is de algemiene SELECT-syntaksis foar it freegjen fan gegevens yn in MySQL-database:

SELECT column_name,column_name
FROM table_name
[WHERE Clause]
[OFFSET M ][LIMIT N]
  • Yn de query statement kinne jo ien of mear tabellen brûke, de tabellen skiede mei komma's (,), en brûk de WHERE statement om query betingsten yn te stellen.
  • It kommando SELECT kin ien of mear records lêze.
  • Jo kinne in asterisk (*) brûke om oare fjilden te ferfangen, de SELECT-útspraak sil alle fjildgegevens fan 'e tabel weromjaan
  • Jo kinne de WHERE-statement brûke om elke betingst op te nimmen.
  • Jo kinne de gegevensoffset opjaan wêrby't de SELECT-útspraak de query begjint mei OFFSET.Standert is de offset 0.
  • Jo kinne de eigenskip LIMIT brûke om it oantal weromjûne records yn te stellen.

Krij gegevens fia kommando-prompt

Yn it folgjende foarbyld sille wy it kommando SQL SELECT brûke om de gegevens fan 'e MySQL-gegevenstabel chenweiliang_tbl te krijen:

Instance

It folgjende foarbyld sil alle records fan 'e gegevenstabel chenweiliang_tbl werombringe:

Lês it datablêd:

select * from chenweiliang_tbl;

Brûk PHP-skript om gegevens te krijen

mei help fan PHP funksjes mysqli_query() en SQL SELECT kommando om de gegevens te krijen.

Dizze funksje wurdt brûkt om SQL-kommando's út te fieren en dan PHP-funksjes troch te jaan mysqli_fetch_array() om gegevens te brûken of út te fieren foar alle fragen.

mysqli_fetch_array() De funksje hellet in rige út de resultaatset as in assosjatyf array, of in array fan nûmers, of beide. Jout in array werom oanmakke út de rigen helle út de resultaatset, of falsk as der gjin rigen mear binne.

It folgjende foarbyld lêst alle records út de gegevens tabel chenweiliang_tbl.

Instance

Besykje it folgjende foarbyld om alle records fan 'e gegevenstabel chenweiliang_tbl te werjaan.

Brûk de mysqli_fetch_array MYSQL_ASSOC parameter om gegevens op te heljen:

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

 

Yn it boppesteande foarbyld wurdt elke rige fan lêzen lêzen tawiisd oan 'e fariabele $ row, en dan wurdt elke wearde útprinte.

Tink derom:Unthâld dat as jo in fariabele moatte brûke yn in tekenrige, set de fariabele yn krullende beugels.

Yn it boppesteande foarbyld is de twadde parameter fan 'e PHP mysqli_fetch_array () funksje MYSQL_ASSOC, set dizze parameter yn om it resultaat te freegjen om in assosjatyf array werom te jaan, kinne jo de fjildnamme brûke as de yndeks fan 'e array.

PHP jout in oare funksje mysqli_fetch_assoc(), nimt de funksje in rige út de resultaatset as in assosjatyf array.Jout in assosjatyf array generearre út de rigen nommen út de resultaatset, of falsk as der gjin rigen mear binne.

Instance

Besykje it folgjende foarbyld, dat brûkt mysqli_fetch_assoc() funksje om alle records fan 'e gegevenstabel út te fieren chenweiliang_tbl:

Brûk mysqli_fetch_assoc om gegevens op te heljen:

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

Jo kinne ek de konstante MYSQL_NUM brûke as de twadde parameter fan 'e PHP-funksje mysqli_fetch_array (), dy't in array fan nûmers werombringt.

Instance

De folgjende foarbylden brûke MYSQL_NUM De parameter toant alle records fan 'e gegevenstabel chenweiliang_tbl:

Brûk de mysqli_fetch_array MYSQL_NUM parameter om gegevens op te heljen:

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

De útfierresultaten fan 'e boppesteande trije foarbylden binne itselde.


ûnthâld release

It is in goede praktyk om rinnerkeûnthâld frij te meitsjen neidat wy in SELECT-statement hawwe útfierd.

It ûnthâld kin frijlitten wurde fia de PHP-funksje mysqli_free_result ().

It folgjende foarbyld toant it gebrûk fan dizze funksje.

Instance

Besykje de folgjende foarbylden:

Fergees ûnthâld mei 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);
?>
 

Hope Chen Weiliang Blog ( https://www.chenweiliang.com/ ) dield "Hoe freget de MySQL-database de gegevens yn 'e tabel?Query Statement/Command/Syntaksis" om jo te helpen.

Wolkom om de keppeling fan dit artikel te dielen:https://www.chenweiliang.com/cwl-461.html

Wolkom by it Telegram-kanaal fan Chen Weiliang's blog om de lêste updates te krijen!

🔔 Wês de earste om de weardefolle "ChatGPT Content Marketing AI Tool Usage Guide" te krijen yn 'e kanaaltopmap! 🌟
📚 Dizze hantlieding befettet enoarme wearde, 🌟Dit is in seldsume kâns, mis it net! ⏰⌛💨
Diel en like as jo wolle!
Jo dielen en likes binne ús trochgeande motivaasje!

 

发表 评论

Jo e-postadres wurdt net publisearre. Ferplichte fjilden wurde brûkt * Etiket

rôlje nei boppen