他们到底哪里不同??
区别,一般用哪个更好??
他们存储,得出的结果是什么形式的??
______________________________________________________________
答3:
基本都一样,只是返回数组结构不一样。比如你用
SELECT name, age, gender FROM users WHERE age > 18
$row = mysql_fetch_array()得到的$row可以用0,1,2或‘name','age'来访问
也就是$row[0]=$row[name]=名字,$row[1]=$row[age]=年龄
mysql_result()和fetch_array()一样,而且支持用$row['user.age'],$row['user.name'],
在选用多个table时方便.
mysql_fetch_row()只能用0,1,2,不能用‘name','age'
mysql_fetch_object()用$row->name,$row->age,$row->gender
______________________________________________________________
答4:
mysql_fetch_array ---   取得查询后的数组结果
语法 : array mysql_fetch_array (int result [, int result_type])
说明 :
传回一数组,此数组相当于取得列,如果没有更多的列则传回false。
mysql_fetch_array( )是mysql_fetch_row( )的延伸版本,除了将资料储存在数组的数字索引之外,它也能储存资料在组合的索引之中,使用栏位名称当作是索引值。
如果查询的结果有二个以上的栏位都是相同的名称时,则最后的栏位为有效,为了存取相同名称的栏位,你必须为栏位取个别名。
select t1.f1 as foo t2.f1 as bar from t1, t2
mysql_fetch_array( )的第二个参数result_type是必非需的,result_type是个常数且有以下的值 : MYSQL_ASSOC,MYSQL_NUM 及 MYSQL_BOTH(这是PHP3.0.7中新增的)
mysql_fetch_row ---   取得单列结果
语法 : array mysql_fetch_row (int result)
说明 :
传回一数组,此数组相当于取得列,如果没有更多列则传回false。
mysql_fetch_row( )从结果取得资料的一列,将列放入数组中传回,各个结果栏位储存在数组偏移量之中,偏移量的起始值为0。
随后呼叫mysql_fetch_row( )将传回结果中的下一列,如果没有更多列则传回false。
mysql_fetch_object ---   取得查询后的物件结果
语法 : object mysql_fetch_object (int result [, int result_typ])
说明 :
传回一物件,此物件相当于取得列,如果没有更多列则传回fales。
mysql_fetch_object( )类似于mysql_fetch_array( ),有一点不同的是此函数传回的是物件来替代数组,间接的意思是说你可以以栏位名称来存取资料,且不是以它们的偏移量(offset)(数字是非法的属性名称)
非必需选项 result_type 是个常数且可以是下列的值 : MYSQL_ASSOC, MYSQL_NUM, MYSQL_BOTH。
此函数和mysql_fetch_array( )相同,且在速度上也和mysql_fetch_row( )差不多。

mysql_result ---   取得结果资料
语法 : int mysql_result (int result, int row [, mixed field])
说明 :
mysql_result( )从MySQL结果传回一格(cell)的内容,参数field可以是栏位的偏移量(offset)、栏位的名称、或是 fieldname.tablename,如果列(column)的名称是别名('select foo as bar from...'),则使用别名来替代列的名称。
当工作在大型的结果时,你应该考虑使用取得整列,这些函数传回小格(cell)多样的内容,它们会表mysql_result( )更快速。同样地,在参数field指定栏位的偏移量,会比指定一个栏位名称或是tablename.fieldname还要快速。
呼叫mysql_result( )不应该掺杂呼叫其它的函数。
______________________________________________________________
答5:
楼上的
我试过mysql_fetch_row()可以用‘name','age'
______________________________________________________________
答6:
错了,是楼上的楼上
______________________________________________________________
答7:
具体用的时候就知道了啊
______________________________________________________________
答8:
mysql_fetch_array() 返回数组,默认为2*字段数,一组以下标、一组以名字。可用常数 MYSQL_ASSOC、MYSQL_NUM 与 MYSQL_BOTH设定
mysql_fetch_row() 仅返回下标数组
mysql_fetch_object() 返回对象,一名字做属性
mysql_result() 取得某个元素。将查询结果视为二维的表,返回x行(记录)y列(字段)的数据
非特殊需要,不要使用mysql_result()
其他三个效率相当,视需要和个人喜好选用
______________________________________________________________
答9:
array mysql_fetch_array ( resource result [, int result_type])
返回根据从结果集取得的行生成的数组,如果没有更多行则返回 FALSE。
mysql_fetch_array() 是 mysql_fetch_row() 的扩展版本。除了将数据以数字索引方式储存在数组中之外,还可以将数据作为关联索引储存,用字段名作为键名。
如果结果中的两个或以上的列具有相同字段名,最后一列将优先。要访问同名的其它列,必须用该列的数字索引或给该列起个别名。对有别名的列,不能再用原来的列名访问其内容(本例中的 'field')。

array mysql_fetch_row ( resource result)
返回根据所取得的行生成的数组,如果没有更多行则返回 FALSE。
mysql_fetch_row() 从和指定的结果标识关联的结果集中取得一行数据并作为数组返回。每个结果的列储存在一个数组的单元中,偏移量从 0 开始。
依次调用 mysql_fetch_row() 将返回结果集中的下一行,如果没有更多行则返回 FALSE。

object mysql_fetch_object ( resource result)
返回根据所取得的行生成的对象,如果没有更多行则返回 FALSE。
mysql_fetch_object() 和 mysql_fetch_array() 类似,只有一点区别 - 返回一个对象而不是数组。间接地也意味着只能通过字段名来访问数组,而不是偏移量(数字是合法的属性名)。
注: 该函数返回的字段名是大小写敏感的。


mixed mysql_result ( resource result, int row [, mixed field])
mysql_result() 返回 MySQL 结果集中一个单元的内容。字段参数可以是字段的偏移量或者字段名,或者是字段表点字段名(tablename.fieldname)。如果给列起了别名 ('select foo as bar from...'),则用别名替代列名。
当作用于很大的结果集时,应该考虑使用能够取得整行的函数(在下边指出)。这些函数在一次函数调用中返回了多个单元的内容,比 mysql_result() 快得多。此外注意在字段参数中指定数字偏移量比指定字段名或者 tablename.fieldname 要快得多。
调用 mysql_result() 不能和其它处理结果集的函数混合调用。
posted on 2009-11-13 14:15  钱途无梁  阅读(1543)  评论(0编辑  收藏  举报