MySQL Select from 查询数据
普通查询
SELECT FROM 语法用于从数据表中查询读取数据。
语法:
SELECT column1,column1,... FROM tb_name
如果要读取全部字段,可以使用 * 号代替字段名:
SELECT * FROM tb_name
例子:
<?php $conn = @mysql_connect("localhost","root","root123"); if (!$conn){ die("连接数据库失败:" . mysql_error()); } mysql_select_db("test", $conn); mysql_query("set character set 'gbk'"); //避免中文乱码字符转换 mysql_query("set character set 'utf8'"); // PHP 文件为 utf-8 格式时使用 $sql = "SELECT * FROM user"; $result = mysql_query($sql); //得到查询结果数据集 //循环从数据集取出数据 while( $row = mysql_fetch_array($result) ){ echo "用户名:".$row['username']."<br />"; echo "电子邮件:".$row['email']."<br />"; echo "注册日期:".date("Y-m-d", $row[regdate])."<br /><br />"; } ?>
浏览器输出:
用户名:admin 电子邮件:admin@zzzyk.com 注册日期:2010-08-06 用户名:小明 电子邮件:xiao@163.com 注册日期:2010-07-02 用户名:Jack 电子邮件:jack@gmail.com 注册日期:2010-07-02 用户名:小王 电子邮件:12345@163.com 注册日期:2010-11-13
说明
- 使用 mysql_query("set character set 'gbk'") 来避免读取数据的中文乱码
- mysql_query() 得到的是数据集资源(Resource),需要用 mysql_fetch_array() 函数来取得,关于 mysql_fetch_array() 更详细的使用参见《MySQl mysql_fetch_* 系列函数》
- 使用 while 循环来逐行取得全部数据