PHP开发中四种查询返回结果分析


Posted in PHP onJanuary 02, 2011

1.<!--使用mysql_result()来获取数据-->

<?php 
$connection=mysql_connect("localhost","root","password"); //连接并选择数据库服务器 
mysql_select_db("test",$connection); 
$query="insert into users(user_name)"; //在test数据库里插入一条数据 
$query.="values('tuxiaohui')"; 
$result=mysql_query($query); 
if(!$query) 
echo "insert data failed!<br>"; 
else{ 
$query="select * from users"; //查询数据 
$result=mysql_query($query,$connection); 
for($rows_count=0;$rows_count<7;$rows_count++) //用mysql_result获得数据并输出,mysql_result() 返回 MySQL 结果集中一个单元的内容。 
{ 
echo "用户ID:".mysql_result($result,$rows_count,"user_id")."<br>"; 
echo "用户名:".mysql_result($result,$rows_count,"user_name")."<br>"; 
} 
} 
?>

2.<!--使用mysql_fetch_row()来获取数据,以数组的形式返回查询结果-->
<?php 
$connection=mysql_connect("localhost","root","password"); //连接并选择数据库服务器 
mysql_select_db("test",$connection); 
$query="select * from users"; 
$result=mysql_query($query,$connection); 
while($row=mysql_fetch_row($result)) 
{ 
echo "用户ID:".$row[0]."<br>"; 
echo "用户名:".$row[1]."<br>"; 
} 
?>

3.<!--使用mysql_fetch_array()来获取数据,同mysql_fetch_row()类似,也是获取结果集中当前行数据,并在调用后自动滑向下一行-->
<?php 
$connection=mysql_connect("localhost","root","password"); //连接并选择数据库服务器 
mysql_select_db("test",$connection); 
$query="select * from users"; 
$result=mysql_query($query,$connection); 
while($row=mysql_fetch_array($result)) 
{ 
echo "用户ID:".$row[0]."<br>"; //也可以写做$row["user_id"] 
echo "用户名:".$row[1]."<br>"; //也可以写做$row["user_name"] 
} 
?>

4.<!--使用mysql_fetch_object()以对象的形式返回查询结果,也是用于查询数据结果集,返回当前行数据,并自动滑向下一行,不同的是它返回的是一个对象,这个对象的属性集合即为数据的属性集合,而属性上的值则为数据库中当前行该属性上的值-->
<?php 
$connection=mysql_connect("localhost","root","root"); //连接并选择数据库服务器 
mysql_select_db("test",$connection); 
$query="select * from users"; 
$result=mysql_query($query,$connection); 
while($row=mysql_fetch_object($result)) 
{ 
echo "用户ID:".$row->user_id."<br>"; //通过对象运算符->获得改行数据在其属性上的值。 
echo "用户名:".$row->user_name."<br>"; 
} 
?>

5.综合比较:
mysql_result():优点在于使用方便;其缺点在于功能少,一次调用只能获取结果数据集中的一行元素,对较大型的数据库效率较低;
mysql_fetch_row():优点在于执行效率在4种方法中最高;不足在于只能用数字作为属性索引来获得属性值,在使用时非常容易出现混淆;
mysql_fetch_array():执行效率同样高,同mysql_fetch_row()相差无几,并界可以用属性名方式直接获得属性值,因此在实际应用中最常用;
mysql_fetch_object():采用了面向对象思想,在设计思路上更为先进,如果习惯于用面向对象的思路来写程序,则会很自地选择它。其次,该方法的优点还体现在,对于结构较为负责的数据结果,在逻辑上更为清晰。
PHP 相关文章推荐
PHP 函数语法介绍一
Jun 14 PHP
PHP 修复未正常关闭的HTML标签实现代码(支持嵌套和就近闭合)
Jun 07 PHP
如何利用PHP执行.SQL文件
Jul 05 PHP
解密ThinkPHP3.1.2版本之独立分组功能应用
Jun 19 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(九)
Jun 24 PHP
thinkphp中空模板与空模块的用法实例
Nov 26 PHP
php实现网页缓存的工具类分享
Jul 14 PHP
[原创]PHP字符串中插入子字符串方法总结
May 06 PHP
谈谈从phpinfo中能获取哪些值得注意的信息
Mar 28 PHP
PHP 多任务秒级定时器的实现方法
May 13 PHP
laravel框架中路由设置,路由参数和路由命名实例分析
Nov 23 PHP
php使用Swoole实现毫秒级定时任务的方法
Sep 04 PHP
linux下删除7天前日志的代码(php+shell)
Jan 02 #PHP
PHP中=赋值操作符对不同数据类型的不同行为
Jan 02 #PHP
完美实现GIF动画缩略图的php代码
Jan 02 #PHP
php实现无限级分类实现代码(递归方法)
Jan 01 #PHP
php下尝试使用GraphicsMagick的缩略图功能
Jan 01 #PHP
PHP读取XML值的代码(推荐)
Jan 01 #PHP
PHP中simplexml_load_string函数使用说明
Jan 01 #PHP
You might like
全国FM电台频率大全 - 23 四川省
2020/03/11 无线电
BBS(php &amp; mysql)完整版(四)
2006/10/09 PHP
PHP数据库操作之基于Mysqli的数据库操作类库
2014/04/19 PHP
PHP使用ajax的post方式下载excel文件简单示例
2019/08/06 PHP
利用Dojo和JSON建立无限级AJAX动态加载的功能模块树
2007/03/24 Javascript
用AJAX返回HTML片段中的JavaScript脚本
2010/01/04 Javascript
Jquery AJAX 用于计算点击率(统计)
2010/06/30 Javascript
JavaScript学习笔记(二) js对象
2011/10/25 Javascript
jQuery+CSS实现菜单滑动伸展收缩(仿淘宝)
2013/03/22 Javascript
Jquery AJAX POST与GET之间的区别
2013/11/14 Javascript
JavaScript作用域与作用域链深入解析
2013/12/06 Javascript
一道常被人轻视的web前端常见面试题(JS)
2016/02/15 Javascript
使用Ajax与服务器(JSON)通信实例
2016/11/04 Javascript
javaScript嗅探执行神器-sniffer.js
2017/02/14 Javascript
微信小程序数字滚动插件使用详解
2018/02/02 Javascript
vue.js 实现点击按钮动态添加li的方法
2018/09/07 Javascript
小程序Request的另类用法详解
2019/08/09 Javascript
微信小程序实现倒计时功能
2020/11/19 Javascript
[54:47]Liquid vs VP Supermajor决赛 BO 第五场 6.10
2018/07/05 DOTA
[41:13]完美世界DOTA2联赛PWL S2 Forest vs Rebirth 第一场 11.20
2020/11/20 DOTA
从零学Python之入门(二)基本数据类型
2014/05/25 Python
使用Python下载歌词并嵌入歌曲文件中的实现代码
2015/11/13 Python
详解python基础之while循环及if判断
2017/08/24 Python
Python使用三种方法实现PCA算法
2017/12/12 Python
python tensorflow学习之识别单张图片的实现的示例
2018/02/09 Python
浅谈python中字典append 到list 后值的改变问题
2018/05/04 Python
python 用 xlwings 库 生成图表的操作方法
2019/12/22 Python
Python实现AES加密,解密的两种方法
2020/10/03 Python
python工具快速为音视频自动生成字幕(使用说明)
2021/01/27 Python
css3背景图片透明叠加属性cross-fade简介及用法实例
2013/01/08 HTML / CSS
中介公司区域经理岗位职责范本
2014/03/02 职场文书
售后客服工作职责
2014/06/16 职场文书
2014年社区居委会主任重阳节讲话稿
2014/09/25 职场文书
学生上课迟到检讨书
2015/01/01 职场文书
盗窃案辩护词
2015/05/21 职场文书
导游词之西安骊山
2019/12/20 职场文书