sql mysql assoc和row_mysql_fetch_row,mysql_fetch_array,mysql_fetch_assoc的区别
一直以来,有很多初学者搞不懂这些Mysql中从查询结果集中取得数据的函数之间有什么区别,今天我就来秀一把,在秀之前先给大家一段PHP实例
$link=mysql_connect('localhost','root',”);
mysql_select_db('abc',$link);
$sql = “select * from book”;
$result = mysql_query($sql);
while($row = mysql_fetch_row($result))
{
echo $row['cid'].'::'.$row[1].'
';
}
$result = mysql_query($sql);
while($row = mysql_fetch_array($result))
{
echo $row['cid'].'::'.$row[1].'
';
}
$result = mysql_query($sql);
while($row = mysql_fetch_object($result))
{
echo $row->cid.'::'.$row->title.”
”;
}
$result = mysql_query($sql);
while($row = mysql_fetch_assoc($result))
{
echo $row['cid'].'::'.$row[1].'
';
}
?>
分析:
mysql_fetch_row,这个函数是从结果集中取一行作为枚举数据,从和指定的结果标识关联的结果集中取得一行数据并作为数组返回。每个结果的列储存在一个数组的单元中,偏移量从 0 开始。 注意,这里是从0开始偏移,也就是说不能用字段名字来取值,只能用索引来取值,所以如下代码是取不到值的:
while($row = mysql_fetch_row($res)){
echo $row['cid'].'::'.$row[1].”;
} //这里的$row['cid'] 取不到值。
mysql_fetch_array,从结果集中取得一行作为关联数组,或数字数组,或二者兼有,除了将数据以数字索引方式储存在数组中之外,还可以将数据作为关联索引储存,用字段名作为键名。 也就是说他得到的结果像数组一样,可以用key或者索引来取值,所以
while($row = mysql_fetch_array($res)){
echo $row['cid'].'::'.$row[1].”;
}//这里$row['cid'],$row[1]都能得到相应的值。
mysql_fetch_object,顾名思义,从结果集中取得一行作为对象,并将字段名字做为属性。所以只有这样才能取到值
while($row = mysql_fetch_object($res)){
echo $row->cid.'::'.$row->title.”";
}
mysql_fetch_assoc,从结果集中取得一行作为关联数组,也就是说这个函数不能像mysql_fetch_row那样用索引来取值,只能用字段名字来取,所以
while($row = mysql_fetch_assoc($res)){
echo $row['cid'].'::'.$row[1].”;
} //$row[1]这样是取不到值的
补充一点:
mysql_fetch_array函数是这样定义的:array mysql_fetch_array ( resource result [, int result_type]),返回根据从结果集取得的行生成的数组,如果没有更多行则返回 FALSE。
mysql_fetch_array() 中可选的第二个参数 result_type 是一个常量,可以接受以下值:MYSQL_ASSOC,MYSQL_NUM 和 MYSQL_BOTH。其中:
1、mysql_fetch_assoc($result)==mysql_fetch_array($result,MYSQL_ASSOC);
2、mysql_fetch_row($result)==mysql_fetch_array($result,MYSQL_NUM);
所以mysql_fetch_array()函数在某种程度上可以算是mysql_fetch_row()与 mysql_fetch_assoc()的集合。另外,mysql_fetch_array()另外还有MYSQL_BOTH参数,将得到一个同时包含关 联和数字索引的数组。
在来说句 $row = $db->fetch_array($query);
$db是人数据库操作类,$db->fetch_array($query),fetch_array($query)是那个db类里的方法,$row = $db->fetch_array($query)这句的意思是从记录集$query中得到数据库中的一行记录。
不用类可这样实现
$conn=@mysql_connect($host,$user,$pass);
@mysql_select_db($database,$conn);
$query=mysql_query($sql);
while($row=mysql_fetch_array($query)){
$rows[]=$row;
}
sql mysql assoc和row_mysql_fetch_row,mysql_fetch_array,mysql_fetch_assoc的区别相关推荐
- mysqli mysql assoc,mysqli中的mysql_fetch_assoc?
在你创建了与mysql的连接之后,这很简单: // create the connection to mysql. $mysqli = new mysqli('localhost', 'my_user ...
- mysql_fetch_row,mysql_fetch_array,mysql_fetch_assoc的区别
<?php $link=mysql_connect('localhost','root',"); mysql_select_db('abc',$link); $sql = " ...
- 【转】mysql_fetch_row , mysql_fetch_array , mysql_fetch_assoc 的区别
<?php $link = mysql_connect('localhost', 'root', "); mysql_select_db('abc', $link); $sql = & ...
- SQL/MYSQL在CMD命令操作符中创建数据库 、表单并插入数据查看
SQL/MYSQL数据库 .表单.创建 首先确定你已经安装好了MySQL并且已经配置完毕 ①进入MySQL工作区 方法一找到程序进入并且输入MySQL密码: 方法二: window+r 输入cmd 进 ...
- SQL—MySQL基础教程(新手向)
SQL-MySQL基础教程(新手向) 前言 一.数据库 1.概念 2.分类 二.MySQL基本概念 1.概念 2.安装 3.启动关闭连接 4.操作数据库 5.变量类型 6.字段属性 7.表 三.MyS ...
- rlm sql mysql.so_找了好久,终于找到一篇关于FREERADIUS新版的安装说明。和以前的1.X.X还是有很大不同的。...
一.安装openssl 二.安装mysql 直接用命令#yun groupinstall "MySQL Database"安装MySQL数据库. 安装好后,#service mys ...
- mysql 如何优化sql语句,如何优化SQL?MySQL中超实用的SQL语句送给大家
如何优化SQL?MySQL中超实用的SQL语句送给大家 如何优化SQL?MySQL中超实用的SQL语句送给大家 在写SQL时,经常灵活运用一些SQL语句编写的技巧,可以大大简化程序逻辑.减少程序与数据 ...
- php中mysql函数和mysqli函数的用法区别
今天下着断断续续的小雨,我的心情也甚是阴郁.程序又总是出问题. PHP连接数据库的语句运行时总是会显示"mysql_connect(): The mysql extension is dep ...
- MySQL存储引擎中MyISAM和InnoDB区别
转载自 MySQL存储引擎中MyISAM和InnoDB区别 MyISAM 和InnoDB 讲解 InnoDB和MyISAM是许多人在使用MySQL时最常用的两个表类型,这两个表类型各有优劣,视具体应 ...
最新文章
- Oracle笔记(中) 多表查询
- Docker基本命令与使用 —— Docker容器(一)
- 【BZOJ2797】[Poi2012]Squarks 暴力乱搞
- python_base_while循环、for循环
- 空间谱专题10:MUSIC算法
- 【转】sqlserver游标概念与实例全面解说
- MongoClient类参考文档
- SpringBoot项目打成War包??
- 6年前的Dubbo,2年前的Spring Cloud,都被这个架构干掉了
- 【Oracle】回收站
- 对抗生成网络(Generative Adversarial Network, GAN)
- @PropertySource 解析 yml 配置文件,自定义解析 yaml 工厂类
- 侧信道实验实验三 S盒CPA侧信道攻击
- 求解二次规划问题——外点罚函数法/内点罚函数法
- 雷霄骅---巨星陨落
- 名字作诗,拯救诗歌的最后一根稻草
- 千帆竞发待东风――乱弹网络游戏广告
- 学习笔记---高等数学前置知识---约分、通分
- 厦门大学信息学院夏令营经历
- 计算机主机启动不了系统安装系统安装软件,电脑主机启动不了怎么办
热门文章
- linux无密码ssh,scp,rsync
- java 中方法的使用,两个实例教你学会java中方法的使用
- Unity开发《一起来捉妖》教程 | 4.抛掷封妖灵珠
- ShadeGraph教程之节点详解5:Math Nodes
- OpenCV基本函数使用--Python
- android java写文件_Android中文件的读写(一)----流操作
- docker学习记录
- 关系数据库查看器应用程序-ASP.NET Core
- python3怎么使用mnist_loader_Python读取mnist
- 通过nginx反向代理解决跨域