Artikulu direktorioa
- 1 MySQL kontsulta datuak
- 2 Lortu datuak komando-gonbita bidez
- 3 Irakurri fitxa teknikoa:
- 4 Erabili PHP scripta datuak lortzeko
- 5 Erabili mysqli_fetch_array MYSQL_ASSOC parametroa datuak lortzeko:
- 6
- 7 Erabili mysqli_fetch_assoc datuak lortzeko:
- 8 Erabili mysqli_fetch_array MYSQL_NUM parametroa datuak lortzeko:
- 9 memoria askatzea
- 10 Doako memoria mysqli_free_result-ekin:
MySQL datu-baseaNola kontsultatu taulako datuak?Kontsulta adierazpena/agindua/sintaxia
MySQL Kontsulta datuak
MySQL datu-baseek SQL SELECT instrukzioak erabiltzen dituzte datuak kontsultatzeko.
Datu-basean kontsulta ditzakezu mysql> komando-gonbita leihoaren bidez edo PHP script baten bidez.
Gramatika
Honako hau da SELECT sintaxi orokorra MySQL datu-base batean datuak kontsultatzeko:
SELECT column_name,column_name FROM table_name [WHERE Clause] [OFFSET M ][LIMIT N]
- Kontsulta adierazpenean taula bat edo gehiago erabil ditzakezu, taulak komaz (,) bereiz ditzakezu eta WHERE instrukzioa erabil dezakezu kontsulta baldintzak ezartzeko.
- SELECT komandoak erregistro bat edo gehiago irakur ditzake.
- Izartxo bat (*) erabil dezakezu beste eremu batzuk ordezkatzeko, SELECT instrukzioak taulako eremuko datu guztiak itzuliko ditu
- WHERE adierazpena erabil dezakezu edozein baldintza sartzeko.
- SELECT instrukzioak kontsulta hasten duen datu-desplazamendua zehaztu dezakezu OFFSET-ekin.Lehenespenez, desplazamendua 0 da.
- LIMIT propietatea erabil dezakezu itzulitako erregistro kopurua ezartzeko.
Lortu datuak komando-gonbita bidez
Hurrengo adibidean, SQL SELECT komandoa erabiliko dugu chenweiliang_tbl MySQL datu-taularen datuak lortzeko:
adibidea
Adibide honek datu-taularen erregistro guztiak itzuliko ditu chenweiliang_tbl:
Irakurri fitxa teknikoa:
select * from chenweiliang_tbl;
Erabili PHP scripta datuak lortzeko
PHP funtzioak erabiliz mysqli_query() eta SQL HAUTATU datuak lortzeko komandoa.
Funtzio hau SQL komandoak exekutatzeko eta gero PHP funtzioak pasatzeko erabiltzen da mysqli_fetch_array() kontsulta guztietarako datuak erabiltzeko edo ateratzeko.
mysqli_fetch_array() Funtzioak emaitza-multzoko errenkada bat hartzen du matrize elkartu gisa, edo zenbaki-maiz bat edo biak. Emaitza-multzotik hartutako errenkadetatik sortutako array bat itzultzen du, edo faltsua errenkada gehiago ez badago.
Hurrengo adibidean chenweiliang_tbl datu-taularen erregistro guztiak irakurtzen dira.
adibidea
Saiatu hurrengo adibidea chenweiliang_tbl datu-taularen erregistro guztiak bistaratzeko.
Erabili mysqli_fetch_array MYSQL_ASSOC parametroa datuak lortzeko:
<? 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); ?>
Goiko adibidean, irakurritako erregistroen errenkada bakoitza $row aldagaiari esleitzen zaio eta, ondoren, balio bakoitza inprimatzen da.
Oharra:Gogoratu aldagai bat kate batean erabili behar baduzu, jarri aldagaia giltza kizkur artean.
Goiko adibidean, PHP mysqli_fetch_array() funtzioaren bigarren parametroa da MYSQL_ASSOC, ezarri parametro hau emaitza kontsultatzeko matrize elkartu bat itzultzeko, eremuaren izena erabil dezakezu matrizearen indize gisa.
PHP-k beste funtzio bat eskaintzen du mysqli_fetch_assoc(), funtzioak emaitza multzoko errenkada bat hartzen du matrize elkartu gisa.Emaitza-multzotik hartutako errenkadetatik sortutako matrize elkartua itzultzen du, edo faltsua errenkada gehiago ez badago.
adibidea
Saiatu hurrengo adibidea, erabiltzen duena mysqli_fetch_assoc() datu-taularen erregistro guztiak ateratzeko funtzioa chenweiliang_tbl:
Erabili mysqli_fetch_assoc datuak lortzeko:
<? 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); ?>
MYSQL_NUM konstantea ere erabil dezakezu PHP mysqli_fetch_array() funtzioaren bigarren parametro gisa, zenbaki-matrize bat itzultzen duena.
adibidea
Hurrengo adibideek erabiltzen dute MYSQL_NUM Parametroak chenweiliang_tbl datu-taularen erregistro guztiak bistaratzen ditu:
Erabili mysqli_fetch_array MYSQL_NUM parametroa datuak lortzeko:
<? 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); ?>
Goiko hiru adibideen irteerako emaitzak berdinak dira.
memoria askatzea
Praktika ona da kurtsorearen memoria askatzea SELECT instrukzioa exekutatu ondoren.
Memoria PHP mysqli_free_result() funtzioaren bidez askatu daiteke.
Hurrengo adibideak funtzio honen erabilera erakusten du.
adibidea
Saiatu adibide hauek:
Doako memoria mysqli_free_result-ekin:
<? 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 bloga ( https://www.chenweiliang.com/ ) shared "Nola kontsultatzen ditu MySQL datu-baseak taulako datuak?Kontsulta adierazpena/agindua/sintaxia" zuri laguntzeko.
Ongi etorri artikulu honen esteka partekatzera:https://www.chenweiliang.com/cwl-461.html
Ongi etorri Chen Weiliang-en blogeko Telegram kanalera azken eguneraketak jasotzeko!
📚 Gida honek balio handia du, 🌟Aukera arraroa da hau, ez galdu! ⏰⌛💨
Partekatu eta gustatzen bazaizu!
Zure partekatzea eta gustukoak dira gure etengabeko motibazioa!