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 相关文章推荐
PHP5在Apache下的两种模式的安装
Sep 05 PHP
PHP一些有意思的小区别
Dec 06 PHP
PHP中文汉字验证码
Apr 08 PHP
PHP执行linux系统命令的常用函数使用说明
Apr 27 PHP
浅析PHP程序设计中的MVC编程思想
Jul 28 PHP
PHP中的替代语法介绍
Jan 09 PHP
PHP基于工厂模式实现的计算器实例
Jul 16 PHP
深入php内核之php in array
Nov 10 PHP
Symfony2框架创建项目与模板设置实例详解
Mar 17 PHP
CI框架(ajax分页,全选,反选,不选,批量删除)完整代码详解
Nov 01 PHP
php版阿里云OSS图片上传类详解
Dec 01 PHP
浅谈PHP接入(第三方登录)QQ登录 OAuth2.0 过程中遇到的坑
Oct 13 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
基于HTTP长连接的&quot;服务器推&quot;技术的php 简易聊天室
2009/10/31 PHP
php数组函数序列之array_flip() 将数组键名与值对调
2011/11/07 PHP
Laravel使用memcached缓存对文章增删改查进行优化的方法
2016/10/08 PHP
PHP实现一维数组与二维数组去重功能示例
2018/05/24 PHP
解决iframe的frameborder在chrome/ff/ie下的差异
2010/08/12 Javascript
JS和Jquery获取和修改label的值的示例代码
2014/01/15 Javascript
js和css写一个可以自动隐藏的悬浮框
2014/03/05 Javascript
Jquery Ajax Error 调试错误的技巧
2015/11/20 Javascript
jquery密码强度校验
2015/12/02 Javascript
node.js express安装及示例网站搭建方法(分享)
2016/08/22 Javascript
jQuery分页插件jquery.pagination.js使用方法解析
2017/02/09 Javascript
Vue.js 2.0中select级联下拉框实例
2017/03/06 Javascript
jQuery实现图片滑动效果
2017/03/08 Javascript
利用webstrom调试Vue.js单页面程序的方法教程
2017/06/06 Javascript
在小程序中集成redux/immutable/thunk第三方库的方法
2018/08/12 Javascript
深入解析vue 源码目录及构建过程分析
2019/04/24 Javascript
一文了解Vue中的nextTick
2019/05/06 Javascript
微信小游戏之使用three.js 绘制一个旋转的三角形
2019/06/10 Javascript
jQuery实现简单三级联动效果
2020/09/05 jQuery
[01:29]Ti4循环赛第三日精彩回顾
2014/07/13 DOTA
在Python3中使用asyncio库进行快速数据抓取的教程
2015/04/02 Python
进一步探究Python的装饰器的运用
2015/05/05 Python
Python中的左斜杠、右斜杠(正斜杠和反斜杠)
2016/08/30 Python
利用Python爬虫给孩子起个好名字
2017/02/14 Python
python3中eval函数用法使用简介
2019/08/02 Python
Python使用Beautiful Soup爬取豆瓣音乐排行榜过程解析
2019/08/15 Python
python用requests实现http请求代码实例
2019/10/31 Python
python 实现socket服务端并发的四种方式
2020/12/14 Python
个人能力自我鉴赏
2014/01/25 职场文书
中学生差生评语
2014/01/30 职场文书
人力管理专业毕业生求职信
2014/02/27 职场文书
售后服务承诺书怎么写
2014/05/21 职场文书
加强干部作风建设整改方案
2014/10/24 职场文书
2014年客房服务员工作总结
2014/11/18 职场文书
小学见习报告
2015/06/23 职场文书
python OpenCV学习笔记
2021/03/31 Python