როგორ ითხოვს MySQL მონაცემთა ბაზის მონაცემებს ცხრილში?შეკითხვის განცხადება/ბრძანება/სინტაქსი

როგორ მოვითხოვოთ მონაცემები MySQL მონაცემთა ბაზის ცხრილიდან ? მოთხოვნის ოპერატორი/ბრძანება/სინტაქსი

MySQL შეკითხვის მონაცემები

MySQL მონაცემთა ბაზები იყენებს SQL SELECT განცხადებებს მონაცემთა შეკითხვისთვის.

მონაცემთა ბაზაში მონაცემების მოძიება შეგიძლიათ mysql> ბრძანების ხაზის ფანჯრის მეშვეობით, ან PHP სკრიპტის მეშვეობით.

გრამატიკა

ქვემოთ მოცემულია ზოგადი SELECT სინტაქსი MySQL მონაცემთა ბაზაში მონაცემების მოთხოვნისთვის:

SELECT column_name,column_name
FROM table_name
[WHERE Clause]
[OFFSET M ][LIMIT N]
  • შეკითხვის განცხადებაში შეგიძლიათ გამოიყენოთ ერთი ან მეტი ცხრილი, გამოყოთ ცხრილები მძიმეებით (,) და გამოიყენოთ WHERE განცხადება შეკითხვის პირობების დასაყენებლად.
  • SELECT ბრძანებას შეუძლია წაიკითხოს ერთი ან მეტი ჩანაწერი.
  • თქვენ შეგიძლიათ გამოიყენოთ ვარსკვლავი (*) სხვა ველების ჩასანაცვლებლად, SELECT განცხადება დააბრუნებს ცხრილის ველების ყველა მონაცემს
  • თქვენ შეგიძლიათ გამოიყენოთ WHERE განცხადება ნებისმიერი პირობის დასამატებლად.
  • თქვენ შეგიძლიათ მიუთითოთ მონაცემთა ოფსეტი, რომლითაც SELECT განცხადება იწყებს შეკითხვას OFFSET-ით.სტანდარტულად, ოფსეტი არის 0.
  • დაბრუნებული ჩანაწერების რაოდენობის დასაყენებლად შეგიძლიათ გამოიყენოთ LIMIT თვისება.

მიიღეთ მონაცემები ბრძანების ხაზის საშუალებით

შემდეგ მაგალითში, ჩვენ გამოვიყენებთ SQL SELECT ბრძანებას MySQL მონაცემთა ცხრილის მონაცემების მისაღებად chenweiliang_tbl:

მაგალითი

შემდეგი მაგალითი დააბრუნებს მონაცემთა ცხრილის ყველა ჩანაწერს chenweiliang_tbl:

წაიკითხეთ მონაცემთა ფურცელი:

select * from chenweiliang_tbl;

გამოიყენეთ PHP სკრიპტი მონაცემების მისაღებად

მონაცემების მისაღებად გამოიყენეთ PHP ფუნქცია mysqli_query() და SQL SELECT ბრძანება.

ეს ფუნქცია გამოიყენება SQL ბრძანებების შესასრულებლად, შემდეგ კი PHP ფუნქცია mysqli_fetch_array() გამოიყენება ყველა მოთხოვნილი მონაცემის წვდომის ან გამოსატანად.

mysqli_fetch_array() ფუნქცია შედეგების ნაკრებიდან იღებს სტრიქონს ასოციაციური მასივის, რიცხვითი მასივის ან ორივეს სახით და აბრუნებს მასივს, რომელიც გენერირებულია შედეგების ნაკრებიდან აღებული სტრიქონიდან. თუ მეტი სტრიქონი არ არის, ის აბრუნებს false-ს.

შემდეგი მაგალითი კითხულობს ყველა ჩანაწერს მონაცემთა ცხრილიდან 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);
?>

 

ზემოთ მოყვანილ მაგალითში, წაკითხული ჩანაწერების თითოეული მწკრივი ენიჭება ცვლადს $ row და შემდეგ თითოეული მნიშვნელობა იბეჭდება.

შენიშვნა: თუ სტრიქონში გამოყენება გჭირდებათ, არ დაგავიწყდეთ ცვლადის ხვეულ ფრჩხილებში ჩასმა.

ზემოთ მოცემულ მაგალითში, PHP mysqli_fetch_array() ფუნქციის მეორე პარამეტრია MYSQL_ASSOC . ამ პარამეტრის დაყენება აბრუნებს ასოციაციურ მასივს და შეგიძლიათ გამოიყენოთ ველის სახელი მასივის ინდექსად.

PHP გთავაზობთ კიდევ ერთ ფუნქციას, `mysqli_fetch_assoc()` , რომელიც შედეგების ნაკრებიდან ასოციაციური მასივის სახით იღებს ერთ სტრიქონს. ის აბრუნებს ასოციაციურ მასივს შედეგების ნაკრებიდან აღებული სტრიქონების საფუძველზე; თუ მეტი სტრიქონი აღარ არის ხელმისაწვდომი, ის აბრუნებს false-ს.

მაგალითი

სცადეთ შემდეგი მაგალითი, რომელიც იყენებს mysqli_fetch_assoc() ფუნქციას chenweiliang_tbl ცხრილის ყველა ჩანაწერის გამოსატანად:

გამოიყენეთ 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);
?>

თქვენ ასევე შეგიძლიათ გამოიყენოთ მუდმივი MYSQL_NUM, როგორც PHP mysqli_fetch_array() ფუნქციის მეორე პარამეტრი, რომელიც აბრუნებს რიცხვთა მასივს.

მაგალითი

შემდეგ მაგალითში გამოყენებულია 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 განცხადებას.

მეხსიერების გათავისუფლება შესაძლებელია PHP ფუნქციის 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);
?>
 

იმედია, ჩენ ვეილიანგის ბლოგზე ( https://www.chenweiliang.com/ ) გამოქვეყნებული სტატია „როგორ მოვიძიოთ მონაცემები MySQL მონაცემთა ბაზის ცხრილიდან? მოთხოვნის ოპერატორები/ბრძანებები/სინტაქსი“ თქვენთვის სასარგებლო იქნება.

თავისუფლად გაგვიზიარეთ ამ სტატიის ბმული: https://www.chenweiliang.com/cwl-461.html

მეტი ფარული ხრიკის გასახსნელად🔑, კეთილი იყოს თქვენი მობრძანება ჩვენს Telegram არხზე!

გააზიარეთ და მოიწონეთ თუ მოგეწონათ! თქვენი გაზიარებები და მოწონებები ჩვენი მუდმივი მოტივაციაა!

 

评论

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

გადაახვიეთ ზემოთ