首页 > 数据库技术 > 详细

吴裕雄--天生自然MySQL学习笔记:MySQL 查询数据

时间:2019-12-28 23:14:19      阅读:71      评论:0      收藏:0      [点我收藏+]
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 * from runoob_tbl;
使用PHP脚本来获取数据
使用 PHP 函数的 mysqli_query() 及 SQL SELECT 命令来获取数据。
该函数用于执行 SQL 命令,然后通过 PHP 函数 mysqli_fetch_array() 来使用或输出所有查询的数据。
mysqli_fetch_array() 函数从结果集中取得一行作为关联数组,或数字数组,或二者兼有 返回根据从结果集取得的行生成的数组,如果没有更多行则返回 false。
以下实例为从数据表 runoob_tbl 中读取所有记录。

<?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 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));
}
while($row = mysqli_fetch_array($retval, MYSQLI_ASSOC))
{
    echo "<tr><td> {$row[‘runoob_id‘]}</td> ".
         "<td>{$row[‘runoob_title‘]} </td> ".
         "<td>{$row[‘runoob_author‘]} </td> ".
         "<td>{$row[‘submission_date‘]} </td> ".
         "</tr>";
}
echo </table>;
mysqli_close($conn);
?>

以下实例使用 MYSQLI_NUM 参数显示数据表 runoob_tbl 的所有记录:
<?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 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));
}
while($row = mysqli_fetch_array($retval, MYSQLI_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() 来实现内存的释放。
<?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 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));
}
while($row = mysqli_fetch_array($retval, MYSQLI_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);
?>

 

吴裕雄--天生自然MySQL学习笔记:MySQL 查询数据

原文:https://www.cnblogs.com/tszr/p/12113289.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!