Latest web development tutorials

ข้อมูล MySQL แบบสอบถาม

ฐานข้อมูล MySQL โดยใช้คำสั่ง SQL SELECT เพื่อสอบถามข้อมูล

คุณสามารถ mysql> หน้าต่างพร้อมรับคำสั่งในการค้นหาข้อมูลในฐานข้อมูลหรือผ่านสคริปต์ PHP ในการค้นหาข้อมูล

ไวยากรณ์

ต่อไปนี้เป็นข้อมูลแบบสอบถามที่พบบ่อยในฐานข้อมูล MySQL ไวยากรณ์เลือก:

SELECT column_name,column_name
FROM table_name
[WHERE Clause]
[OFFSET M ][LIMIT N]
  • คุณสามารถสอบถามการใช้หนึ่งหรือมากกว่าหนึ่งตารางให้ใช้เครื่องหมายจุลภาคระหว่างตาราง (,) การแบ่งส่วนและใช้คำสั่ง WHERE เพื่อกำหนดเกณฑ์การค้นหา
  • คำสั่ง SELECT อ่านหนึ่งหรือมากกว่าหนึ่งระเบียน
  • คุณสามารถใช้เครื่องหมายดอกจัน (*) แทนสาขาอื่น ๆ , คำสั่ง SELECT ผลตอบแทนทุกสาขาในตารางข้อมูล
  • คุณสามารถใช้คำสั่ง WHERE ที่จะรวมถึงเงื่อนไขใด ๆ
  • คุณสามารถระบุข้อมูลชดเชยคำสั่งเลือกแบบสอบถามเริ่มต้นด้วยการชดเชย โดยค่าเริ่มต้นชดเชยคือ 0
  • จำกัด จำนวนของระเบียนที่คุณสามารถใช้ในการตั้งค่าคุณสมบัติกลับ

ได้รับข้อมูลจากพร้อมรับคำสั่ง

ตัวอย่างต่อไปนี้เราจะได้รับ MySQL ตารางข้อมูล w3big_tbl ข้อมูลผ่านคำสั่ง SQL เลือก:

ตัวอย่าง

ตัวอย่างต่อไปนี้จะส่งกลับระเบียนทั้งหมดใน w3big_tbl ตารางข้อมูล:

root@host# mysql -u root -p password;
Enter password:*******
mysql> use w3big;
Database changed
mysql> SELECT * from w3big_tbl 
+-------------+----------------+-----------------+-----------------+
| w3big_id | w3big_title | w3big_author | submission_date |
+-------------+----------------+-----------------+-----------------+
|           1 | Learn PHP      | John Poul       | 2007-05-21      |
|           2 | Learn MySQL    | Abdul S         | 2007-05-21      |
|           3 | JAVA Tutorial  | Sanjay          | 2007-05-21      |
+-------------+----------------+-----------------+-----------------+
3 rows in set (0.01 sec)

mysql>

ใช้สคริปต์ PHP ในการดึงข้อมูล

ใช้ฟังก์ชัน PHP mysql_query () และคำสั่ง SQL เลือกเพื่อดึงข้อมูล

ฟังก์ชั่นนี้จะใช้ในการรันคำสั่ง SQL แล้วผ่าน mysql_fetch_array ฟังก์ชัน PHP () เพื่อใช้หรือข้อมูลการส่งออกสำหรับการค้นหาทั้งหมด

mysql_fetch_array () ฟังก์ชัน Fetch แถวเป็นอาร์เรย์เชื่อมโยงอาร์เรย์ตัวเลขหรือทั้งสองอย่างตามอาร์เรย์ของผลตอบแทนที่ได้รับจากผลการตั้งค่าแถวสร้างถ้าไม่มีแถวกลับมาจากผลการปลอม

ตัวอย่างต่อไปนี้จะอ่านบันทึกทั้งหมดจากข้อมูลในตาราง w3big_tbl

ตัวอย่าง

ลองตัวอย่างต่อไปนี้จะแสดงระเบียนทั้งหมดของตารางข้อมูล w3big_tbl

<?php
$dbhost = 'localhost:3036';
$dbuser = 'root';
$dbpass = 'rootpassword';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
  die('Could not connect: ' . mysql_error());
}
$sql = 'SELECT w3big_id, w3big_title, 
               w3big_author, submission_date
        FROM w3big_tbl';

mysql_select_db('w3big');
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
  die('Could not get data: ' . mysql_error());
}
while($row = mysql_fetch_array($retval, MYSQL_ASSOC))
{
    echo "Tutorial ID :{$row['w3big_id']}  <br> ".
         "Title: {$row['w3big_title']} <br> ".
         "Author: {$row['w3big_author']} <br> ".
         "Submission Date : {$row['submission_date']} <br> ".
         "--------------------------------<br>";
} 
echo "Fetched data successfully\n";
mysql_close($conn);
?>

ตัวอย่างข้างต้นบันทึกอ่านแต่ละบรรทัดถูกกำหนดให้กับตัวแปร $ แถวแล้วพิมพ์ออกมาแต่ละค่า

หมายเหตุ: โปรดจำไว้ว่าถ้าคุณจำเป็นต้องใช้ตัวแปรในสตริง, ตั้งค่าตัวแปรวางไว้ในวงเล็บปีกกา

ในตัวอย่างข้างต้น, PHP mysql_fetch_array () ฟังก์ชันของพารามิเตอร์ที่สองคือ MYSQL_ASSOC ตั้งผลแบบสอบถามพารามิเตอร์กลับอาเรย์, คุณสามารถใช้ชื่อสนามเป็นดัชนีอาร์เรย์

PHP ให้ mysql_fetch_assoc ฟังก์ชั่นอื่น ๆ () ฟังก์ชั่นการดึงข้อมูลแถวผลเป็นอาเรย์ ผลตอบแทนที่ได้อาเรย์ที่ได้รับจากผลการตั้งค่าแถวสร้างถ้าไม่มีแถวมากขึ้นก็กลับเท็จ

ตัวอย่าง

ลองตัวอย่างต่อไปนี้ใช้ mysql_fetch_assoc () ฟังก์ชั่นการส่งออกระเบียนทั้งหมดของตารางข้อมูล w3big_tbl:

<?php
$dbhost = 'localhost:3036';
$dbuser = 'root';
$dbpass = 'rootpassword';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
  die('Could not connect: ' . mysql_error());
}
$sql = 'SELECT w3big_id, w3big_title, 
               w3big_author, submission_date
        FROM w3big_tbl';

mysql_select_db('w3big');
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
  die('Could not get data: ' . mysql_error());
}
while($row = mysql_fetch_assoc($retval))
{
    echo "Tutorial ID :{$row['w3big_id']}  <br> ".
         "Title: {$row['w3big_title']} <br> ".
         "Author: {$row['w3big_author']} <br> ".
         "Submission Date : {$row['submission_date']} <br> ".
         "--------------------------------<br>";
} 
echo "Fetched data successfully\n";
mysql_close($conn);
?>

นอกจากนี้คุณยังสามารถใช้ MYSQL_NUM คงเป็น PHP mysql_fetch_array () อาร์กิวเมนต์ที่สองของฟังก์ชันส่งกลับอาร์เรย์ของตัวเลข

ตัวอย่าง

ตัวอย่างต่อไปนี้ใช้พารามิเตอร์ MYSQL_NUM แสดงระเบียนทั้งหมดใน w3big_tbl ตารางข้อมูล:

<?php
$dbhost = 'localhost:3036';
$dbuser = 'root';
$dbpass = 'rootpassword';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
  die('Could not connect: ' . mysql_error());
}
$sql = 'SELECT w3big_id, w3big_title, 
               w3big_author, submission_date
        FROM w3big_tbl';

mysql_select_db('w3big');
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
  die('Could not get data: ' . mysql_error());
}
while($row = mysql_fetch_array($retval, MYSQL_NUM))
{
    echo "Tutorial ID :{$row[0]}  <br> ".
         "Title: {$row[1]} <br> ".
         "Author: {$row[2]} <br> ".
         "Submission Date : {$row[3]} <br> ".
         "--------------------------------<br>";
}
echo "Fetched data successfully\n";
mysql_close($conn);
?>

ดังกล่าวข้างต้นสามตัวอย่างของผลการส่งออกจะเหมือนกัน


ปล่อยหน่วยความจำ

หลังจากที่เราเสร็จสิ้นการดำเนินการตามคำสั่ง SELECT หน่วยความจำเคอร์เซอร์ปล่อยออกมาเป็นนิสัยที่ดี . โดยฟังก์ชัน PHP mysql_free_result () เพื่อให้บรรลุความเป็นอิสระของหน่วยความจำ

ตัวอย่างต่อไปนี้แสดงให้เห็นถึงวิธีการใช้ฟังก์ชั่น

ตัวอย่าง

ลองตัวอย่างต่อไปนี้:

<?php
$dbhost = 'localhost:3036';
$dbuser = 'root';
$dbpass = 'rootpassword';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
  die('Could not connect: ' . mysql_error());
}
$sql = 'SELECT w3big_id, w3big_title, 
               w3big_author, submission_date
        FROM w3big_tbl';

mysql_select_db('w3big');
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
  die('Could not get data: ' . mysql_error());
}
while($row = mysql_fetch_array($retval, MYSQL_NUM))
{
    echo "Tutorial ID :{$row[0]}  <br> ".
         "Title: {$row[1]} <br> ".
         "Author: {$row[2]} <br> ".
         "Submission Date : {$row[3]} <br> ".
         "--------------------------------<br>";
}
mysql_free_result($retval);
echo "Fetched data successfully\n";
mysql_close($conn);
?>