په جدول کې د MySQL ډیټابیس پوښتنې ډاټا څنګه کوي؟د پوښتنې بیان / کمانډ / نحو

د MySQL ډیټابیس کې د جدول څخه د معلوماتو پوښتنې څنګه وکړو ؟ د پوښتنې بیان/کمانډ/نحو

مای د پوښتنو ډاټا

د MySQL ډیټابیس د ډیټا پوښتنو لپاره د SQL SELECT بیانات کاروي.

تاسو کولی شئ په ډیټابیس کې د mysql> کمانډ پرامپټ کړکۍ یا د پی ایچ پی سکریپټ له لارې معلومات وپوښتئ.

ګرامر

لاندې د MySQL ډیټابیس کې د معلوماتو پوښتنې کولو لپاره عمومي SELECT ترکیب دی:

SELECT column_name,column_name
FROM table_name
[WHERE Clause]
[OFFSET M ][LIMIT N]
  • د پوښتنې په بیان کې، تاسو کولی شئ یو یا څو میزونه وکاروئ، میزونه د کوما (،) سره جلا کړئ، او د پوښتنې شرایطو ټاکلو لپاره د WHERE بیان وکاروئ.
  • د SELECT کمانډ کولی شي یو یا څو ریکارډونه ولولي.
  • تاسو کولی شئ د نورو ساحو د ځای په ځای کولو لپاره ستوری (*) وکاروئ، د SELECT بیان به د میز ټولې ساحې ډاټا بیرته راولي
  • تاسو کولی شئ د هر حالت شاملولو لپاره د WHERE بیان وکاروئ.
  • تاسو کولی شئ د ډیټا آفسیټ مشخص کړئ چیرې چې د SELECT بیان د OFFSET سره پوښتنه پیل کوي.په ډیفالټ ډول آف سیٹ 0 دی.
  • تاسو کولی شئ د بیرته راستنیدونکو ریکارډونو شمیر تنظیم کولو لپاره د LIMIT ملکیت وکاروئ.

د کمانډ پرامپټ له لارې معلومات ترلاسه کړئ

په لاندې مثال کې، موږ به د MySQL ډیټا جدول chenweiliang_tbl ډیټا ترلاسه کولو لپاره د SQL SELECT کمانډ وکاروو:

مثال

لاندې مثال به د ډیټا جدول ټول ریکارډونه بیرته راولي chenweiliang_tbl:

ډیټاشیټ ولولئ:

select * from chenweiliang_tbl;

د معلوماتو ترلاسه کولو لپاره د PHP سکریپټ وکاروئ

د معلوماتو د ترلاسه کولو لپاره د PHP فنکشن mysqli_query() او د SQL SELECT کمانډ وکاروئ.

دا فنکشن د SQL کمانډونو اجرا کولو لپاره کارول کیږي، او بیا د PHP فنکشن mysqli_fetch_array() د ټولو پوښتل شویو معلوماتو ته د لاسرسي یا وتلو لپاره کارول کیږي.

د mysqli_fetch_array() فنکشن د پایلې سیټ څخه د ملګري صف، عددي صف، یا دواړو په توګه یو قطار بیرته ترلاسه کوي، او د پایلې سیټ څخه ترلاسه شوي قطار څخه رامینځته شوی صف بیرته راګرځوي. که چیرې نور قطارونه نه وي، نو دا غلط بیرته راګرځي.

لاندې مثال د ډیټا جدول chenweiliang_tbl څخه ټول ریکارډونه لوستل کیږي.

مثال

د ډیټا جدول chenweiliang_tbl ټول ریکارډونو ښودلو لپاره لاندې مثال هڅه وکړئ.

د معلوماتو ترلاسه کولو لپاره mysqli_fetch_array MYSQL_ASSOC پیرامیټر وکاروئ:

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

 

په پورته مثال کې، د لوستلو ریکارډونو هر قطار متغیر $ قطار ته ټاکل شوی، او بیا هر ارزښت چاپ شوی.

یادونه: که تاسو اړتیا لرئ چې په تار کې یې وکاروئ نو په یاد ولرئ چې متغیر په منحني قوسونو کې وتړئ.

په پورته مثال کې، د PHP mysqli_fetch_array() فعالیت دوهم پیرامیټر MYSQL_ASSOC دی . د دې پیرامیټر تنظیم کول یو ملګری صف بیرته راګرځوي، او تاسو کولی شئ د ساحې نوم د صف د شاخص په توګه وکاروئ.

PHP یو بل فعالیت وړاندې کوي، `mysqli_fetch_assoc()` ، کوم چې د پایلې سیټ څخه یو قطار د ملګري صف په توګه بیرته ترلاسه کوي. دا د پایلې سیټ څخه ترلاسه شوي قطارونو پراساس یو ملګري صف بیرته راګرځوي؛ که چیرې نور قطارونه شتون ونلري، نو دا غلط بیرته راګرځوي.

مثال

لاندې مثال هڅه وکړئ، کوم چې د chenweiliang_tbl جدول ټول ریکارډونه د وتلو لپاره mysqli_fetch_assoc() فنکشن کاروي:

د معلوماتو ترلاسه کولو لپاره mysqli_fetch_assoc وکاروئ:

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

تاسو کولی شئ د پی ایچ پی mysqli_fetch_array() فنکشن د دویم پیرامیټر په توګه ثابت MYSQL_NUM هم وکاروئ، کوم چې د شمیرو لړۍ راګرځوي.

مثال

لاندې مثال د MYSQL_NUM پیرامیټر کاروي ترڅو په جدول chenweiliang_tbl کې ټول ریکارډونه ښکاره کړي:

د معلوماتو ترلاسه کولو لپاره mysqli_fetch_array MYSQL_NUM پیرامیټر وکاروئ:

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

د پورته دریو مثالونو پایله یو شان ده.


د حافظې خوشې کول

دا یو ښه تمرین دی چې د کرسر حافظې وړیا کړئ وروسته له دې چې موږ د SELECT بیان اجرا کړو.

حافظه د پی ایچ پی فنکشن له لارې خوشې کیدی شي mysqli_free_result().

لاندې مثال د دې فنکشن کارول ښیې.

مثال

لاندې مثالونه هڅه وکړئ:

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

هیله ده، مقاله "څنګه د MySQL ډیټابیس کې د جدول څخه معلومات راټول کړو؟ د پوښتنو بیانونه/حکمونه/نحو" چې د چن ویلیانګ په بلاګ ( https://www.chenweiliang.com/ ) کې شریک شوی ستاسو لپاره به ګټور وي.

د دې مقالې لینک شریکولو لپاره وړیا احساس وکړئ: https://www.chenweiliang.com/cwl-461.html

د نورو پټو چلونو د خلاصولو لپاره، زموږ د ټیلیګرام چینل سره یوځای کیدو ته ښه راغلاست!

که مو خوښه شوه لایک او شریک کړئ! ستاسو شریکول او خوښول زموږ دوامداره هڅونه ده!

 

评论 评论

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

پاس شئ