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


Posted in PHP onOctober 09, 2006

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

PHP 相关文章推荐
php5.2.0内存管理改进
Jan 22 PHP
PHP在字符断点处截断文字的实现代码
Apr 21 PHP
php实现图形显示Ip地址的代码及注释
Jan 20 PHP
php使用curl存储cookie的示例
Mar 31 PHP
PHP中使用asort进行中文排序失效的问题处理
Aug 18 PHP
php数组索引与键值操作技巧实例分析
Jun 24 PHP
PHP 读取文本文件内容并分页显示
Jan 02 PHP
关于PHP内置的字符串处理函数详解
Feb 04 PHP
2017年最新PHP经典面试题目汇总(上篇)
Mar 17 PHP
PHP实现针对日期,月数,天数,周数,小时,分,秒等的加减运算示例【基于strtotime】
Apr 19 PHP
laravel通过创建自定义artisan make命令来新建类文件详解
Aug 17 PHP
ThinkPHP3.2框架操作Redis的方法分析
May 05 PHP
一个简洁的多级别论坛
Oct 09 #PHP
用ODBC的分页显示
Oct 09 #PHP
为查询结果建立向后/向前按钮
Oct 09 #PHP
投票管理程序
Oct 09 #PHP
用PHP和ACCESS写聊天室(九)
Oct 09 #PHP
用PHP和ACCESS写聊天室(八)
Oct 09 #PHP
用PHP和ACCESS写聊天室(七)
Oct 09 #PHP
You might like
基于PHP5魔术常量与魔术方法的详解
2013/06/13 PHP
PHP图片处理之使用imagecopy函数添加图片水印实例
2014/11/19 PHP
php视频拍照上传头像功能实现代码分享
2015/10/08 PHP
php array_merge_recursive 数组合并
2016/10/26 PHP
PHP 500报错的快速解决方法
2016/12/14 PHP
swoole锁的机制代码实例讲解
2021/03/04 PHP
写出更好的JavaScript程序之undefined篇(中)
2009/11/23 Javascript
javascript 类型判断代码分析
2010/03/28 Javascript
javascript 精粹笔记
2010/05/09 Javascript
在图片上显示左右箭头类似翻页的代码
2013/03/04 Javascript
js比较和逻辑运算符的介绍
2013/03/10 Javascript
Jquery 实现图片轮换
2015/01/28 Javascript
jsonp跨域请求数据实现手机号码查询实例分析
2015/12/12 Javascript
JSONObject使用方法详解
2015/12/17 Javascript
javascript基础知识
2016/06/07 Javascript
jQuery实现搜索页面关键字的功能
2017/02/16 Javascript
RequireJs的使用详解
2017/02/19 Javascript
vue如何实现observer和watcher源码解析
2017/03/09 Javascript
VueJS如何引入css或者less文件的一些坑
2017/04/25 Javascript
利用python画一颗心的方法示例
2017/01/31 Python
基于Django用户认证系统详解
2018/02/21 Python
python 爬虫 批量获取代理ip的实例代码
2018/05/22 Python
对python dataframe逻辑取值的方法详解
2019/01/30 Python
Python3的高阶函数map,reduce,filter的示例详解
2019/07/23 Python
Python实现在Windows平台修改文件属性
2020/03/05 Python
css3一个简易的 LED 数字时钟实现方法
2020/01/15 HTML / CSS
很酷的HTML5电子书翻页动画特效
2016/02/25 HTML / CSS
Urban Outfitters英国官网:美国平价服饰品牌
2016/11/25 全球购物
英国网上电器商店:Electricshop
2020/03/15 全球购物
财务人员个人自荐信范文
2013/09/26 职场文书
酒店led欢迎词
2014/01/09 职场文书
中专毕业生自我鉴定
2014/02/02 职场文书
幼儿园感谢信
2015/01/21 职场文书
成绩单家长意见
2015/06/03 职场文书
学困生转化工作总结
2015/08/13 职场文书
详解python的异常捕获
2022/03/03 Python