כיצד מבצע שאילתות של מסד נתונים של 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);
?>
 

Hope Chen Weiliang בלוג ( https://www.chenweiliang.com/ ) shared "כיצד מסד הנתונים של MySQL מבצע שאילתות על הנתונים בטבלה?הצהרת שאילתה/פקודה/תחביר" כדי לעזור לך.

מוזמנים לשתף את הקישור של מאמר זה:https://www.chenweiliang.com/cwl-461.html

ברוכים הבאים לערוץ הטלגרם של הבלוג של Chen Weiliang כדי לקבל את העדכונים האחרונים!

🔔 היה הראשון לקבל את "מדריך השימוש בכלי AI של ChatGPT Content Marketing" בספרייה העליונה של הערוץ! 🌟
📚 המדריך הזה מכיל ערך עצום, 🌟זו הזדמנות נדירה, אל תפספסו אותה! ⏰⌛💨
שתפו ותעשו לייק אם בא לכם!
השיתוף והלייקים שלך הם המוטיבציה המתמשכת שלנו!

 

发表 评论

כתובת האימייל שלך לא תפורסם. 必填 项 已 用 * תווית

גלול למעלה