Paano ginagawa ang data ng query ng MySQL database sa isang talahanayan?Pahayag ng Query/Utos/Syntax

MySQL databasePaano i-query ang data sa talahanayan?Pahayag ng Query/Utos/Syntax

MySQL Data ng query

Gumagamit ang mga database ng MySQL ng mga pahayag ng SQL SELECT para mag-query ng data.

Maaari kang mag-query ng data sa database sa pamamagitan ng mysql> command prompt window, o sa pamamagitan ng PHP script.

gramatika

Ang sumusunod ay ang pangkalahatang SELECT syntax para sa pag-query ng data sa isang MySQL database:

SELECT column_name,column_name
FROM table_name
[WHERE Clause]
[OFFSET M ][LIMIT N]
  • Sa pahayag ng query, maaari kang gumamit ng isa o higit pang mga talahanayan, paghiwalayin ang mga talahanayan gamit ang mga kuwit (,), at gamitin ang pahayag na WHERE upang magtakda ng mga kundisyon ng query.
  • Maaaring basahin ng SELECT command ang isa o higit pang mga record.
  • Maaari kang gumamit ng asterisk (*) upang palitan ang ibang mga field, ibabalik ng SELECT statement ang lahat ng field data ng table
  • Maaari mong gamitin ang pahayag na WHERE upang isama ang anumang kundisyon.
  • Maaari mong tukuyin ang data offset kung saan sinisimulan ng SELECT statement ang query gamit ang OFFSET.Bilang default, ang offset ay 0.
  • Maaari mong gamitin ang LIMIT property para itakda ang bilang ng mga naibalik na tala.

Kumuha ng data sa pamamagitan ng command prompt

Sa sumusunod na halimbawa, gagamitin namin ang SQL SELECT command para makuha ang data ng MySQL data table chenweiliang_tbl:

Pangyayari

Ibabalik ng sumusunod na halimbawa ang lahat ng mga talaan ng talahanayan ng data na chenweiliang_tbl:

Basahin ang datasheet:

select * from chenweiliang_tbl;

Gumamit ng PHP script para makakuha ng data

gamit ang mga function ng PHP mysqli_query() At SQL SELECT utos para makuha ang data.

Ginagamit ang function na ito upang magsagawa ng mga SQL command at pagkatapos ay ipasa ang mga function ng PHP mysqli_fetch_array() upang gumamit o mag-output ng data para sa lahat ng query.

mysqli_fetch_array() Kinukuha ng function ang isang row mula sa set ng resulta bilang isang associative array, o isang array ng mga numero, o pareho. Nagbabalik ng array na nabuo mula sa mga row na nakuha mula sa resulta set, o false kung wala nang mga row.

Ang sumusunod na halimbawa ay nagbabasa ng lahat ng mga tala mula sa talahanayan ng data na chenweiliang_tbl.

Pangyayari

Subukan ang sumusunod na halimbawa upang ipakita ang lahat ng mga talaan ng talahanayan ng data na chenweiliang_tbl.

Gamitin ang mysqli_fetch_array MYSQL_ASSOC parameter para kumuha ng data:

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

 

Sa halimbawa sa itaas, ang bawat hilera ng mga talaang nabasa ay itinalaga sa variable na $row, at pagkatapos ay ipi-print ang bawat halaga.

Paalala:Tandaan na kung kailangan mong gumamit ng variable sa isang string, ilagay ang variable sa curly braces.

Sa halimbawa sa itaas, ang pangalawang parameter ng PHP mysqli_fetch_array() function ay MYSQL_ASSOC, itakda ang parameter na ito upang i-query ang resulta upang maibalik ang isang associative array, maaari mong gamitin ang field name bilang index ng array.

Nagbibigay ang PHP ng isa pang function mysqli_fetch_assoc(), ang function ay tumatagal ng isang hilera mula sa resulta na itinakda bilang isang associative array.Nagbabalik ng nag-uugnay na array na nabuo mula sa mga row na kinuha mula sa set ng resulta, o false kung wala nang mga row.

Pangyayari

Subukan ang sumusunod na halimbawa, na gumagamit ng mysqli_fetch_assoc() function na i-output ang lahat ng mga talaan ng data table chenweiliang_tbl:

Gamitin ang mysqli_fetch_assoc para kumuha ng data:

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

Maaari mo ring gamitin ang pare-parehong MYSQL_NUM bilang pangalawang parameter ng PHP mysqli_fetch_array() function, na nagbabalik ng hanay ng mga numero.

Pangyayari

Ang mga sumusunod na halimbawa ay gumagamit ng MYSQL_NUM Ipinapakita ng parameter ang lahat ng mga talaan ng talahanayan ng data na chenweiliang_tbl:

Gamitin ang mysqli_fetch_array MYSQL_NUM parameter para kumuha ng data:

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

Ang mga resulta ng output ng tatlong halimbawa sa itaas ay pareho.


paglabas ng memorya

Isang magandang kasanayan ang palayain ang memory ng cursor pagkatapos naming magsagawa ng SELECT statement.

Ang memorya ay maaaring ilabas sa pamamagitan ng PHP function mysqli_free_result().

Ang sumusunod na halimbawa ay nagpapakita ng paggamit ng function na ito.

Pangyayari

Subukan ang mga sumusunod na halimbawa:

Libreng memorya na may 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/ ) ibinahagi "Paano itinatanong ng database ng MySQL ang data sa talahanayan?Query Statement/Command/Syntax" para matulungan ka.

Maligayang pagdating upang ibahagi ang link ng artikulong ito:https://www.chenweiliang.com/cwl-461.html

Maligayang pagdating sa Telegram channel ng blog ni Chen Weiliang para makuha ang pinakabagong mga update!

🔔 Maging una upang makuha ang mahalagang "ChatGPT Content Marketing AI Tool Usage Guide" sa direktoryo ng nangungunang channel! 🌟
📚 Ang gabay na ito ay naglalaman ng malaking halaga, 🌟Ito ay isang bihirang pagkakataon, huwag palampasin ito! ⏰⌛💨
Share and like kung gusto mo!
Ang iyong pagbabahagi at pag-like ay ang aming patuloy na pagganyak!

 

发表 评论

Ang iyong email address ay hindi mai-publish. 必填 项 已 用 * Tatak

mag-scroll sa itaas