Mysql入门系列:如何处理MYSQL查询

http://tech.ddvip.com   2006年12月31日    社区交流

本文详细介绍Mysql入门系列:如何处理MYSQL查询

  处理结果集包括下面几个步骤:

  ■ 通过调用mysql_store_result() 或mysql_use_result() 产生结果集。这些函数如果成功则返回MYSQL_RES 指针,失败则返回N U LL。稍后我们将查看mysql_store_result() 与mysql_use_result() 的不同,以及选择其中一个而不选另一个时的情况。我们的样例使

  用mysql_ store _ result( ),它能立即从服务器返回行,并将它们存储到客户机中。

  ■ 对结果集的每一行调用mysql_ fetch _ rows ( )。这个函数返回MYSQL_ROW 值,它是一个指向字符串数组的指针,字符串数组表示行中每列的值。要根据应用程序对行进行操作。可以只打印出列值,执行有关的统计计算,或者做些其他操作。当结果集中不再有行时, mysql_fetch_rows() 返回NULL。

  ■ 处理结果集时,调用mysql_free_result() 释放所使用的内存。如果忽略了这一点,则应用程序就会泄露出内存(对于长期运行的应用程序,适当地解决结果集是极其重要的;否则,会注意到系统将由一些过程所取代,这些过程消耗着经常增长的系统资源量)。

  下面的样例轮廓介绍了如何处理返回结果集的查询:

  

  我们通过调用函数process_result_set() 来处理每一行,这里有个窍门,因为我们并没有定义这个函数,所以需要这样做。通常,结果的处理集函数是基于下面的循环:

  

  从mysql_fetch_row() 返回的MYSQL_ROW 值是一个指向数值数组的指针,因此,访问每个值就是访问row[i],这里i 的范围是从0到该行的列数减1。这里有几个关于MYSQL_ROW 数据类型的要点需要注意:

责编:豆豆技术应用

正在加载评论...