重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
SELECT 语句用于从数据库中选取数据。
十年建站经验, 成都网站建设、网站设计客户的见证与正确选择。成都创新互联提供完善的营销型网页建站明细报价表。后期开发更加便捷高效,我们致力于追求更美、更快、更规范。
语句1:SELECT * FROM table_name
解说:意思就是读取整个表table_name里面的数据显示出来
语句1:SELECT * FROM table_name Where x = 1
解说:意思就是读取表table_name里面键名为:x 值为:1的 数据显示出来
例子:
?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("my_db", $con);
$result = mysql_query("SELECT * FROM Persons");
while($row = mysql_fetch_array($result))
{
echo $row['FirstName'] . " " . $row['LastName'];
echo "br /";
}
mysql_close($con);
?
数据库采用UTF8编码,而页面申明编码是GB2312,这是最常见的产生乱码的原因。
这时候在PHP脚本里面直接SELECT数据出来的就是乱码,需要在查询前先使用:
mysql_query("SET NAMES GBK");或mysql_query("SET NAMES GB2312");
来设定MYSQL连接编码,保证页面申明编码与这里设定的连接编码一致(GBK是GB2312的扩展)。如果页面是UTF-8编码的话,可以用:
mysql_query("SET NAMES UTF8"); 注意是UTF8而不是一般用的UTF-8。假如页面申明的编码与数据库内部编码一致可以不设定连接编码。
代码如下:
$mysql_mylink = mysql_connect($mysql_host, $mysql_user, $mysql_pass);
mysql_query("SET NAMES 'GBK'");
SELECT
语句用于从数据库中选取数据。
语句1:SELECT
*
FROM
table_name
解说:意思就是读取整个表table_name里面的数据显示出来
语句1:SELECT
*
FROM
table_name
Where
x
=
1
解说:意思就是读取表table_name里面键名为:x
值为:1的
数据显示出来
例子:
?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("my_db", $con);
$result = mysql_query("SELECT * FROM Persons");
while($row = mysql_fetch_array($result))
{
echo $row['FirstName'] . " " . $row['LastName'];
echo "br /
";
}
mysql_close($con);
?数据库采用UTF8编码,而页面申明编码是GB2312,这是最常见的产生乱码的原因。
这时候在PHP脚本里面直接SELECT数据出来的就是乱码,需要在查询前先使用:
mysql_query("SET NAMES GBK");或mysql_query("SET NAMES GB2312");来设定MYSQL连接编码,保证页面申明编码与这里设定的连接编码一致(GBK是GB2312的扩展)。如果页面是UTF-8编码的话,可以用:
mysql_query("SET
NAMES
UTF8");
注意是UTF8而不是一般用的UTF-8。假如页面申明的编码与数据库内部编码一致可以不设定连接编码。
代码如下:
$mysql_mylink = mysql_connect($mysql_host, $mysql_user, $mysql_pass);
mysql_query("SET NAMES 'GBK'");
$result = mysql_query("select count(*) num from articles");
结果集中的num就是行数
或者
$result = mysql_query("select * from articles");
$num_rows = mysql_num_rows($result);
方法是:不用limit限制直接把总量数据取出来,然后用条件判断控制每页显示的条数。这样做的弊端是数据量很大的时候内存损耗特别大,因为每个页面请求都是总量数据总量还是用另外一条语句取值吧,能节省些内存
PHP查询语句,有两种方法获得查询的总记录数。
一是使用mysql_num_rows函数,例子代码:
?php
$link = mysql_connect("localhost", "mysql_user", "mysql_password");
mysql_select_db("database", $link);
$result = mysql_query("SELECT * FROM table1", $link);
$num_rows = mysql_num_rows($result);
echo "$num_rows Rows\n";
?
二是修改查询语句,使用COUNT(*)作为查询内容,例子代码:
?php
$link = mysql_connect("localhost", "mysql_user", "mysql_password");
mysql_select_db("database", $link);
$result = mysql_query("SELECT COUNT(*) FROM table1", $link);
list($num_rows) = mysql_fetch_row($result);
echo "$num_rows Rows\n";
?
1、首先用navicat新建一个数据库database1,在database1数据库中新建一个表table2。
2、在table2中添加新的数据。
3、接着新建一个名称为mysql_query的数据库,在页面中用mysql_connect 函数与数据库建立连接。
4、用mysql_select_db函数选择要查询的数据库。
5、最后将mysql_query,php文件在浏览器中打开,查看查询到数据库中的内容的结果。