当前位置: 首页 > 图文教程 > 网络编程 > PHP > 用DBSQL类加快开发MySQL数据库程序的速度

PHP
PHP中的代码安全和SQL Injection防范
PHP数组实例总结及说明
一个php的图片水印的程序
PHP常见漏洞被攻击原因分析
PHP 5.2.8 紧急发布 修复5.2.7严重漏洞
编写安全 PHP 应用程序的七个习惯
PHP中常用的函数库和一些小技巧
PHP安全基础原则与方法
PHP函数速查表
PHP开发语言中的精华和技巧
测试在每个层上对PHP代码进行检查
不同文件构建PHP程序的正确方式
用phpinfo来实现PHP配置统计
更好的构造开发模板 五种常见的PHP设计模式
PHP的十个高级技巧
PHP对文本数据库的基本操作方法
967个函式列表 PHP常用语法速查表
实用:JAVA事件模式下PHP如何实现
针对配置文件 PHP最常用的ini函数
用PHP开发qmail邮件服务器管理系统

PHP 中的 用DBSQL类加快开发MySQL数据库程序的速度


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 196 ::
收藏到网摘: n/a

当你在编写存取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()方法:以表名为参数,返回一个包括该表的结果的数组