首页 > 编程地带 > php-在mysql中查询数据

php-在mysql中查询数据

2007年10月30日 发表评论 阅读评论

一共四种方法,详细如下:
一、使用mysql_result()获取查询记录集
   原型如下:
  

string mysql_result(int result,int row,mixed[filed]);

  
   参数说明如下:
   1、result:由函数mysql_query()或mysql_db_query()返回的结果标识,用来指定所要获取的数据的sql语句类型。
   2、row:用来指定所要获取记录的行号,取值范围为0~数据行数,为-1时表示结果行总数。
   3、field:用于指定所要获取记录上的某一属性的值,可选,取值可为string型的属性名称,形如[tablename.]fieldname;也可为int型的属性索引值,属性索引从0开始,为-1时表示属性数。
  
  示例:
  [codes=php]
        //连接并选择到数据库服务器
      $connection=mysql_connect (“localhost”,”username”,”password”);
      mysql_select_db(“books”,$connection);
      //插入一条记录
      $query=”insert into computers (name,price,publish_date)”;
      $query.=”values ('数据结构',20.00,'2001-1-1')”;
      $result=mysql_query($query);
      if(!$query)
          echo “insert date failed!
“;
      else{
          $query=”select * from computers”;
          $query.=”where price >= 20″;
          $result=mysql_query($query);
          for($rows_count=0;$rows_count<1;$rows_count++)
          {
              echo “书名:”.mysql_result($result,$rows_count,”name”).”
“;
              echo “价格:”.mysql_result($result,$rows_count,”price”).”
“;
              echo “出版日期:”.mysql_result($result,$rows_count,”publish_date”);
              echo “
“;
          }
      }
  ?>
  [/codes]
  注:本例中的for只进行了一次,这是因为无法得到部的数据数目,下次将针对此问题解决!
  
  
二、使用mysql_fetch_row()以数组的形式返回查询结果
    原型如下:
    

array mysql_fetch_row(int result)

    
    示例:
    [codes=php]
          $connection=mysql_connect(“localhost”,”username”,”password”);
      mysql_select_db(“books”,$connection);
      //查询数据
      $query=”select * from computers”;
      $query.=”where price >=20″;
      $result=mysql_query($query,$connection);
      while($row=mysql_fetch_row($result))
      {
          echo “书名:”.$row[1].”
“;
          echo “价格:”.$row[2].”
“;
          echo “出版日期:”.$row[3],”publish_date”);
          echo “
“;
      }
    ?>
    [/codes]
    
    注:在这个循环中,每一次mysql_fetch_row()都获得当前行数据,并赋值给数组$row,然后自动滑向下一行,在取出最后一行后,函数将返回false,循环结束。
    
三、使用mysql_fetch_array获取当前行数据
    原型如下:
    

array mysql_fetch_array(int result,int &#91;result_type&#93;)

    
    示例:
     [codes=php]
          $connection=mysql_connect(“localhost”,”username”,”password”);
      mysql_select_db(“books”,$connection);
      //查询数据
      $query=”select * from computers”;
      $query.=”where price >=20″;
      $result=mysql_query($query,$connection);
      while($row=mysql_fetch_array($result))
      {
          echo “书名:”.$row[1].”
“;
          echo “价格: “.$row[“price”].”
“;
          echo “出版日期:”$row[“publish_date”].”
“;
          echo “
“;
      }
    ?>
    [/codes]
    
四、使用mysql_fetch_object()以对象的形式返回查询结果
    原型如下:
    

object mysql_fetch_object(int result,int&#91;result_type&#93;)

    
    
    示例:
    
    [codes=php]
          $connection=mysql_connect(“localhost”,”username”,”password”);
      mysql_select_db(“books”,$connection);
      //查询数据
      $query=”select * from computers”;
      $query.=”where price >=20″;
      $result=mysql_query($query,$connection);
      while($row=mysql_fetch_object($result))
      {
          echo “书名:”.$row->name.”
“;
          echo “价格: “.$row->price.”
“;
          echo “出版日期:”$row->publish_date.”
“;
          echo “
“;
      }
    ?>    
    [/codes]
    
    
四大函数比较:
    1、mysql_result():优点是使用方便,缺点是功能少,一次调用一行元素。
    2、mysql_fetch_row():优点在于执行效率在4种方法中最高,缺点只能用数字做为索引来获取元素。
    3、mysql_fetch_array():优点执行效率很高,并且可以用属性名方式直接获得属性值。
    4、mysql_fetch_object():采用面向对象思想,结构清析!

转载请注明:woyigui's blog [http://www.woyigui.cn/]
本文标题:php-在mysql中查询数据
本文地址:http://www.woyigui.cn/2007/10/30/php%E5%9C%A8mysql%E4%B8%AD%E6%9F%A5%E8%AF%A2%E6%95%B0%E6%8D%AE/

分类: 编程地带 标签: ,
  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.
*