mysql 查询数据 程序_MySQL 查询数据
MySQL 查詢數據
MySQL 數據庫使用SQL SELECT語句來查詢數據。
你可以通過 mysql> 命令提示窗口中在數據庫中查詢數據,或者通過PHP腳本來查詢數據。
語法
以下為在MySQL數據庫中查詢數據通用的 SELECT 語法:
SELECT?column_name,column_name
FROM?table_name[WHERE?Clause][LIMIT?N][?OFFSET?M]
查詢語句中你可以使用一個或者多個表,表之間使用逗號(,)分割,并使用WHERE語句來設定查詢條件。
SELECT 命令可以讀取一條或者多條記錄。
你可以使用星號(*)來代替其他字段,SELECT語句會返回表的所有字段數據
你可以使用 WHERE 語句來包含任何條件。
你可以使用 LIMIT 屬性來設定返回的記錄數。
你可以通過OFFSET指定SELECT語句開始查詢的數據偏移量。默認情況下偏移量為0。
通過命令提示符獲取數據
以下實例我們將通過 SQL SELECT 命令來獲取 MySQL 數據表 runoob_tbl 的數據:
實例
以下實例將返回數據表 runoob_tbl 的所有記錄:
讀取數據表:
select*fromrunoob_tbl;
輸出結果:
使用PHP腳本來獲取數據
使用 PHP 函數的mysqli_query()及SQL SELECT命令來獲取數據。
該函數用于執行 SQL 命令,然后通過 PHP 函數mysqli_fetch_array()來使用或輸出所有查詢的數據。
mysqli_fetch_array()函數從結果集中取得一行作為關聯數組,或數字數組,或二者兼有 返回根據從結果集取得的行生成的數組,如果沒有更多行則返回 false。
以下實例為從數據表 runoob_tbl 中讀取所有記錄。
實例
嘗試以下實例來顯示數據表 runoob_tbl 的所有記錄。
使用 mysqli_fetch_array MYSQL_ASSOC 參數獲取數據:
$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 runoob_id, runoob_title,
runoob_author, submission_date
FROM runoob_tbl';
mysqli_select_db($conn,'RUNOOB');
$retval=mysqli_query($conn,$sql);
if(!$retval)
{
die('無法讀取數據:'.mysqli_error($conn));
}
echo'
菜鳥教程 mysqli_fetch_array 測試
';
echo'
| 教程 ID | 標題 | 作者 | 提交日期 |
while($row=mysqli_fetch_array($retval,MYSQL_ASSOC))
{
echo"
{$row['runoob_id']}"."
{$row['runoob_title']}"."
{$row['runoob_author']}"."
{$row['submission_date']}"."
";}echo'';mysqli_close($conn);?>}
echo'';
mysqli_close($conn);
?>
輸出結果如下所示:
以上實例中,讀取的每行記錄賦值給變量 $row,然后再打印出每個值。
注意:記住如果你需要在字符串中使用變量,請將變量置于花括號。
在上面的例子中,PHP mysqli_fetch_array() 函數第二個參數為MYSQL_ASSOC, 設置該參數查詢結果返回關聯數組,你可以使用字段名稱來作為數組的索引。
PHP 提供了另外一個函數mysqli_fetch_assoc(), 該函數從結果集中取得一行作為關聯數組。 返回根據從結果集取得的行生成的關聯數組,如果沒有更多行,則返回 false。
實例
嘗試以下實例,該實例使用了mysqli_fetch_assoc()函數來輸出數據表 runoob_tbl 的所有記錄:
使用 mysqli_fetch_assoc 獲取數據:
$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 runoob_id, runoob_title,
runoob_author, submission_date
FROM runoob_tbl';
mysqli_select_db($conn,'RUNOOB');
$retval=mysqli_query($conn,$sql);
if(!$retval)
{
die('無法讀取數據:'.mysqli_error($conn));
}
echo'
菜鳥教程 mysqli_fetch_assoc 測試
';
echo'
| 教程 ID | 標題 | 作者 | 提交日期 |
while($row=mysqli_fetch_assoc($retval))
{
echo"
{$row['runoob_id']}"."
{$row['runoob_title']}"."
{$row['runoob_author']}"."
{$row['submission_date']}"."
";}
echo'
';mysqli_close($conn);
?>
輸出結果如下所示:
你也可以使用常量 MYSQL_NUM 作為 PHP mysqli_fetch_array() 函數的第二個參數,返回數字數組。
實例
以下實例使用MYSQL_NUM參數顯示數據表 runoob_tbl 的所有記錄:
使用 mysqli_fetch_array MYSQL_NUM 參數獲取數據:
$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 runoob_id, runoob_title,
runoob_author, submission_date
FROM runoob_tbl';
mysqli_select_db($conn,'RUNOOB');
$retval=mysqli_query($conn,$sql);
if(!$retval)
{
die('無法讀取數據:'.mysqli_error($conn));
}
echo'
菜鳥教程 mysqli_fetch_array 測試
';
echo'
| 教程 ID | 標題 | 作者 | 提交日期 |
while($row=mysqli_fetch_array($retval,MYSQL_NUM))
{
echo"
{$row[0]}"."
{$row[1]}"."
{$row[2]}"."
{$row[3]}"."
";}
echo'
';mysqli_close($conn);
?>
輸出結果如下所示:
以上三個實例輸出結果都一樣。
內存釋放
在我們執行完 SELECT 語句后,釋放游標內存是一個很好的習慣。
可以通過 PHP 函數 mysqli_free_result() 來實現內存的釋放。
以下實例演示了該函數的使用方法。
實例
嘗試以下實例:
使用 mysqli_free_result 釋放內存:
$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 runoob_id, runoob_title,
runoob_author, submission_date
FROM runoob_tbl';
mysqli_select_db($conn,'RUNOOB');
$retval=mysqli_query($conn,$sql);
if(!$retval)
{
die('無法讀取數據:'.mysqli_error($conn));
}
echo'
菜鳥教程 mysqli_fetch_array 測試
';
echo'
| 教程 ID | 標題 | 作者 | 提交日期 |
while($row=mysqli_fetch_array($retval,MYSQL_NUM))
{
echo"
{$row[0]}"."
{$row[1]}"."
{$row[2]}"."
{$row[3]}"."
";}echo'
';//釋放內存mysqli_free_result($retval);
mysqli_close($conn);
?>
輸出結果如下所示:
總結
以上是生活随笔為你收集整理的mysql 查询数据 程序_MySQL 查询数据的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: tomcat mysql 启动顺序_li
- 下一篇: mysql 5.7 循环语句_MySQL