Miten MySQL-tietokanta kyselee taulukon tietoja?Kyselylause/komento/syntaksi

MySQL-tietokantaKuinka kysellä taulukon tiedoista?Kyselylause/komento/syntaksi

MySQL Kysely tiedot

MySQL-tietokannat käyttävät SQL SELECT -lauseita tietojen kyselyyn.

Voit tiedustella tietokannan tietoja mysql>-komentokehoteikkunan tai PHP-komentosarjan kautta.

kielioppi

Seuraava on yleinen SELECT-syntaksi tietojen kyselyyn MySQL-tietokannassa:

SELECT column_name,column_name
FROM table_name
[WHERE Clause]
[OFFSET M ][LIMIT N]
  • Kyselykäskyssä voit käyttää yhtä tai useampaa taulukkoa, erottaa taulukot pilkuilla (,) ja käyttää WHERE-käskyä kyselyn ehtojen asettamiseen.
  • SELECT-komento voi lukea yhden tai useamman tietueen.
  • Voit käyttää tähteä (*) korvaamaan muut kentät, SELECT-käsky palauttaa kaikki taulukon kenttätiedot
  • Voit käyttää WHERE-lausetta sisällyttääksesi minkä tahansa ehdon.
  • Voit määrittää datasiirron, jolla SELECT-käsky aloittaa kyselyn OFFSET-komennolla.Oletuksena offset on 0.
  • LIMIT-ominaisuuden avulla voit määrittää palautettavien tietueiden määrän.

Hanki tiedot komentokehotteen kautta

Seuraavassa esimerkissä käytämme SQL SELECT -komentoa saadaksemme MySQL-tietotaulukon chenweiliang_tbl tiedot:

Ilmentymä

Seuraava esimerkki palauttaa kaikki tietotaulukon chenweiliang_tbl tietueet:

Lue tietolomake:

select * from chenweiliang_tbl;

Käytä PHP-skriptiä tietojen hankkimiseen

PHP-funktioiden avulla mysqli_query() 及 SQL SELECT komento saada tiedot.

Tätä toimintoa käytetään SQL-komentojen suorittamiseen ja sitten PHP-toimintojen välittämiseen mysqli_fetch_array() käyttää tai tulostaa tietoja kaikille kyselyille.

mysqli_fetch_array() Funktio hakee rivin tulosjoukosta assosiatiivisena taulukkona tai lukujonona tai molempina. Palauttaa taulukon, joka on luotu tulosjoukosta haetuista riveistä, tai arvon false, jos rivejä ei ole enää.

Seuraava esimerkki lukee kaikki tietueet tietotaulukosta chenweiliang_tbl.

Ilmentymä

Kokeile seuraavaa esimerkkiä näyttääksesi kaikki tietotaulukon chenweiliang_tbl tietueet.

Käytä mysqli_fetch_array MYSQL_ASSOC -parametria tietojen hakemiseen:

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

 

Yllä olevassa esimerkissä jokainen luettujen tietueiden rivi on liitetty muuttujaan $row, ja sitten jokainen arvo tulostetaan.

Huom:Muista, että jos joudut käyttämään muuttujaa merkkijonossa, laita muuttuja aaltosulkeisiin.

Yllä olevassa esimerkissä PHP mysqli_fetch_array() -funktion toinen parametri on MYSQL_ASSOC, aseta tämä parametri kyselyyn tuloksen palauttamiseksi assosiatiivisen taulukon palauttamiseksi, voit käyttää kentän nimeä taulukon indeksinä.

PHP tarjoaa toisen toiminnon mysqli_fetch_assoc(), funktio ottaa rivin tulosjoukosta assosiatiivisena taulukkona.Palauttaa assosiatiivisen taulukon, joka on luotu tulosjoukosta otetuista riveistä, tai epätosi, jos rivejä ei ole enää.

Ilmentymä

Kokeile seuraavaa esimerkkiä, joka käyttää mysqli_fetch_assoc() toiminto tulostaa kaikki tietotaulukon chenweiliang_tbl tietueet:

Käytä mysqli_fetch_assoc tietojen hakemiseen:

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

Voit myös käyttää vakiota MYSQL_NUM toisena parametrina PHP mysqli_fetch_array() -funktiossa, joka palauttaa numerotaulukon.

Ilmentymä

Seuraavat esimerkit käyttävät MYSQL_NUM Parametri näyttää kaikki tietotaulukon chenweiliang_tbl tietueet:

Käytä mysqli_fetch_array MYSQL_NUM -parametria tietojen hakemiseen:

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

Edellä olevien kolmen esimerkin tulostulokset ovat samat.


muistin vapauttaminen

On hyvä käytäntö vapauttaa kursorin muisti sen jälkeen, kun olemme suorittaneet SELECT-käskyn.

Muisti voidaan vapauttaa PHP-funktiolla mysqli_free_result().

Seuraava esimerkki havainnollistaa tämän toiminnon käyttöä.

Ilmentymä

Kokeile seuraavia esimerkkejä:

Vapaa muisti mysqli_free_resultilla:

<?
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 -blogi ( https://www.chenweiliang.com/ ) share "Kuinka MySQL-tietokanta kyselee taulukon tietoja?Kyselylause/komento/syntaksi" auttamaan sinua.

Tervetuloa jakamaan tämän artikkelin linkki:https://www.chenweiliang.com/cwl-461.html

Tervetuloa Chen Weiliangin blogin Telegram-kanavalle saadaksesi viimeisimmät päivitykset!

🔔 Saat ensimmäisenä arvokkaan "ChatGPT Content Marketing AI Toolin käyttöoppaan" kanavan ylähakemistoon! 🌟
📚 Tämä opas sisältää valtavasti arvoa, 🌟Tämä on harvinainen tilaisuus, älä missaa sitä! ⏰⌛💨
Jaa ja tykkää jos tykkäät!
Jakamasi ja tykkäyksesi ovat jatkuva motivaatiomme!

 

发表 评论

Sähköpostiosoitettasi ei julkaista. 必填 项 已 用 * 标注

Vieritä ylös