Straipsnių katalogas
- 1 MySQL užklausos duomenys
- 2 Gaukite duomenis naudodami komandų eilutę
- 3 Skaitykite duomenų lapą:
- 4 Duomenims gauti naudokite PHP scenarijų
- 5 Norėdami gauti duomenis, naudokite parametrą mysqli_fetch_array MYSQL_ASSOC:
- 6
- 7 Duomenims gauti naudokite mysqli_fetch_assoc:
- 8 Norėdami gauti duomenis, naudokite parametrą mysqli_fetch_array MYSQL_NUM:
- 9 atminties išlaisvinimas
- 10 Laisva atmintis su mysqli_free_result:
MySQL duomenų bazėKaip pateikti lentelės duomenų užklausą?Užklausos teiginys / komanda / sintaksė
MySQL Duomenų užklausa
„MySQL“ duomenų bazės naudoja SQL SELECT teiginius duomenų užklausai.
Duomenų bazėje galite pateikti užklausą per mysql> komandų eilutės langą arba per PHP scenarijų.
gramatika
Toliau pateikiama bendra SELECT sintaksė, skirta duomenų užklausai MySQL duomenų bazėje:
SELECT column_name,column_name FROM table_name [WHERE Clause] [OFFSET M ][LIMIT N]
- Užklausos sakinyje galite naudoti vieną ar daugiau lentelių, atskirti lenteles kableliais (,) ir naudoti WHERE teiginį užklausos sąlygoms nustatyti.
- Komanda SELECT gali nuskaityti vieną ar daugiau įrašų.
- Galite naudoti žvaigždutę (*), kad pakeistumėte kitus laukus, SELECT sakinys pateiks visus lentelės lauko duomenis
- Galite naudoti WHERE teiginį, kad įtrauktumėte bet kokią sąlygą.
- Galite nurodyti duomenų poslinkį, kuriuo SELECT sakinys pradeda užklausą su OFFSET.Pagal numatytuosius nustatymus poslinkis yra 0.
- Norėdami nustatyti grąžinamų įrašų skaičių, galite naudoti ypatybę LIMIT.
Gaukite duomenis naudodami komandų eilutę
Šiame pavyzdyje naudosime komandą SQL SELECT, kad gautume MySQL duomenų lentelės chenweiliang_tbl duomenis:
pavyzdys
Šis pavyzdys pateiks visus duomenų lentelės chenweiliang_tbl įrašus:
Skaitykite duomenų lapą:
select * from chenweiliang_tbl;
Duomenims gauti naudokite PHP scenarijų
naudojant PHP funkcijas mysqli_query() 及 SQL SELECT komandą duomenims gauti.
Ši funkcija naudojama vykdyti SQL komandas ir perduoti PHP funkcijas mysqli_fetch_array() naudoti arba išvesti duomenis visoms užklausoms.
mysqli_fetch_array() Funkcija paima eilutę iš rezultatų rinkinio kaip asociatyvų masyvą arba skaičių masyvą, arba abu. Pateikia masyvą, sugeneruotą iš eilučių, gautų iš rezultatų rinkinio, arba false, jei nebėra eilučių.
Šis pavyzdys nuskaito visus įrašus iš duomenų lentelės chenweiliang_tbl.
pavyzdys
Išbandykite šį pavyzdį, kad būtų rodomi visi duomenų lentelės chenweiliang_tbl įrašai.
Norėdami gauti duomenis, naudokite parametrą 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);
?>Aukščiau pateiktame pavyzdyje kiekviena perskaitytų įrašų eilutė priskiriama kintamajam $row, tada kiekviena reikšmė išspausdinama.
Pastaba:Atminkite, kad jei eilutėje reikia naudoti kintamąjį, įdėkite kintamąjį į riestinius skliaustus.
Aukščiau pateiktame pavyzdyje antrasis PHP mysqli_fetch_array() funkcijos parametras yra MYSQL_ASSOC, nustatykite šį parametrą, kad užklaustumėte rezultatą, kad būtų grąžintas asociatyvus masyvas, lauko pavadinimą galite naudoti kaip masyvo indeksą.
PHP suteikia dar vieną funkciją mysqli_fetch_assoc(), funkcija paima eilutę iš rezultatų rinkinio kaip asociatyvų masyvą.Grąžina asociatyvųjį masyvą, sugeneruotą iš eilučių, paimtų iš rezultatų rinkinio, arba klaidingą, jei nebėra eilučių.
pavyzdys
Išbandykite šį pavyzdį, kuriame naudojama mysqli_fetch_assoc() funkcija išvesti visus duomenų lentelės chenweiliang_tbl įrašus:
Duomenims gauti naudokite 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);
?>Taip pat galite naudoti konstantą MYSQL_NUM kaip antrąjį PHP mysqli_fetch_array() funkcijos parametrą, kuris grąžina skaičių masyvą.
pavyzdys
Toliau pateikiami pavyzdžiai MYSQL_NUM Parametras rodo visus duomenų lentelės chenweiliang_tbl įrašus:
Norėdami gauti duomenis, naudokite parametrą 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);
?>Pirmiau minėtų trijų pavyzdžių išvesties rezultatai yra tokie patys.
atminties išlaisvinimas
Tai gera praktika atlaisvinti žymeklio atmintį, kai įvykdome SELECT sakinį.
Atmintį galima atlaisvinti naudojant PHP funkciją mysqli_free_result().
Toliau pateiktame pavyzdyje parodytas šios funkcijos naudojimas.
pavyzdys
Išbandykite šiuos pavyzdžius:
Laisva atmintis su 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 tinklaraštis ( https://www.chenweiliang.com/ ) pasidalino „Kaip MySQL duomenų bazė užklausa lentelės duomenų?Užklausos pareiškimas / komanda / sintaksė“, kad jums padėtų.
Kviečiame pasidalinti šio straipsnio nuoroda:https://www.chenweiliang.com/cwl-461.html
Norėdami atskleisti daugiau paslėptų triukų🔑, prisijunkite prie mūsų „Telegram“ kanalo!
Dalinkitės ir like jei patiko! Jūsų pasidalinimai ir mygtukai „Patinka“ yra mūsų nuolatinė motyvacija!