当前位置:首页> PHP教程> PHP&MYSQL
关键字
文章内容
用DBSQL类加快开发MySQL数据库程序的速度
 
 
修改时间:[2009/03/15 19:55]    阅读次数:[994]    发表者:[起缘]
 
当你在编写存取MYSQL的数据库程序时是不是觉得很麻烦一大套的函数和参数还要检查调用的结果更头痛的是每个程序里都要包含数据库名、用户、密码等想修改都不容易。但如果你使用PHPLIB里的DBSQL类这些问题都会迎刃而解的。这篇文章将教你如何使用DBSQL类。



一、获得DBSQL



怎么获得DBSQL呢
有两个办法

- 由于DBSQL是PHPLIB的一部分你可以从本站或http://phplib.netuse.de下载一份PHPLIB

- 直接从本站下载DBSQL类,我已经把它独立了,并做了一些小的修改。下载地址:http://www.phpuser.com/programs_and_code/codedetail.php?id=3



二、修改DBSQL文件。

打开文件,找到大约138行处,把$Host, $Database, $User, $Password等四个变量改成你机器上的值。



三、使用DBSQL



就这么简单,可以派上用场了了,下面是一个典型的例子(这里我们假设DBSQL类存放在db.php文件里):

<?

01 require "db.php";

02 $db=new DBSQL;

03 $db->connect();

04 if ($db->Link_ID)

{

05 $db->query("SELECT id, name FROM contact WHERE id > 100 AND id < 200");

06 if ($db->nf())

{

07 while ($db->next_record())

{

08 echo "id=", $db->f("id");

09 echo "<br>";

10 echo "name";

11 $db->p('name');

12 echo "<br>";

}

}

13 $db->free_result();

}

?>

我来逐行解释一下


01
-将db.php文件包含进来

02
-创建一个DBSQL类的实例变量名为$db

03
-调用DBSQL的connect()方法连接数据库。这行的作用跟mysql_pconnect(host, db, passwd)一样

04
-通过检查$db的属性Link_ID的值来判断连接是否成功。一般来说只要配置没问题这步可以省略的

05
-如果连接没问题就调用DBSQL类的query方法来执行查询

06
-DBSQL类的nf()函数返回查询后返回的记录的条数跟mysql_num_rows()的作用一样。如果找到了记录继续执行

07
-用一个while循环以DBSQL的next_record()方法为条件。next_record()方法把DBSQL类的结果的指针往下移一条如果到了结尾就返回假值

08
-用DBSQL类的f()方法取回查询结果当前一行的某个字段的值。该方法的参数是字段的名字如$db->f("id")

11
-用DBSQL类的p()方法。p()方法与f()方法不同的是它把查询结果当前一行的某个字段的值直接输出了。该方法的参数是与f()方法一样也是字段的名字如$db->p("id")

13
-释放PHP占用的内存。相当于调用了mysql_free_result函数



DBSQL的基本用法就是这样
当然还有其他一些我在下面来介绍。



四、其他内容



Auto_free属性
如果设为真值当调用next_record()方法到达查询结果的结尾时DBSQL自动执行free_result()方法释放占用的内存

DebugMode属性
如果设为真值在执行query()方法时会把查询的SQL语句打印出来所以在做调试时特别有用



seek
()方法移动DBSQL查询结果的指针第一个为0

num_rows
()方法跟nf()方法一样返回查询结果的记录条数

metadata
()方法以表名为参数返回一个包括该表的结果的数组





希望能给大家带来一点好处
也欢迎大家提出改进意
 
 
 
上一页:mysql类
下一页:PHP/MySQL购物车