数据库类详解(二次开发必备教程).doc
文本预览下载声明
Dedesql数据库类详解(二次开发必备教程)
今天花点时间讲解下织梦的sql数据库类,近期本来是准备录制一套视频教程的,但由于视频压缩的问题迟迟没有开展工作,如果大家有什么好的视频压缩方式可以通过邮件的方式告诉我:tianya#(#=@).目前视频主要想做成wmv或者rmvb这种格式的,里面含有ppt文档以及课程的相关附件.??? 其实数据库类织梦之前就有一个介绍,/v53/archives/functions/db/,这篇文章讲解了数据库类的一些常见的使用方法,不过没有结合例子去介绍,很多人估计看了还不是很懂,为了让更多人理解织梦的数据库使用类,并能够运用到开发中,这里就来做个教程.1.创建数据表??? 在使用这个类之前,我们需要创建数据表,这里我们推荐几个数据库操作工具:PHPMyadmin,Navicat for MySQL,我这里以后者为例.当然这里需要注意,在创建表的时候我们已经安装了一个DedeCMS程序,我们今天的操作是以DedeCMS程序扩展来讲解的.当然程序安装后他自己也会创建N多表,这些表以后再来介绍吧,或者也可以看看/v53/archives/extend/commontable/,这里有一些常用表的说明.??? 这里我们这个数据库叫dedebbs,表前缀用的默认的dede_,我们用Navicat for MySQL来创建一个名为dede_test的表,里面就2个字段,1个id,作为唯一标识,另一个name作为名称(图1).然后往里面添加测试数据(图2),这个操作类似于Access或者EXCEL,比较简单,这里不做冗述.
?
(图1)
(图2)
??? 这里需要注意的是,我们采用的是gbk版本的程序,所以数据表相关的编码也要采用相应版本的编码,在表的选项中设置为gbk相关.下面我将sql列出,如果懒得去创建表,可以在dedecms系统后台的命令运行器中执行下:
?
(图3)
-- ------------------------------ 表 `dede_test`结构-- ----------------------------DROP TABLE IF EXISTS `dede_test`;CREATE TABLE `dede_test` (? `id` mediumint(8) NOT NULL AUTO_INCREMENT,? `name` char(60) NOT NULL DEFAULT ,? PRIMARY KEY (`id`)) ENGINE=MyISAM AUTO_INCREMENT=5 DEFAULT CHARSET=gbk;-- ------------------------------ 插入到 dede_test中的数据-- ----------------------------INSERT INTO `dede_test` VALUES (1, 测试名字1);INSERT INTO `dede_test` VALUES (2, 这是第二个);INSERT INTO `dede_test` VALUES (3, 第三个喽);INSERT INTO `dede_test` VALUES (4, 第四个);2.连接数据库,查询数据表??? 表dede_test我们已经创建完成了,接下来我们要连接数据库了,其实方法非常简单.我们在网站根目录中创建一个test.php的文件,这个文件最好也用gbk的编码,可以用专门的编辑器来创建文件.??? 连接数据库最简单的方法就是引入include文件夹下面的common.inc.php文件,编辑php代码:写入以下内容:test.php-------------------------------?php??? ??? require_once (dirname(__FILE__) . /include/common.inc.php);??? ??? print_r($dsql);?--------------------------------??? 上面代码就是将一个$dsql类输出,我们再执行下这个文件/test.php(注只是在本地做了个解析,其实就是localhost),我们查看源代码,看到下面的内容(图4):
(图4)
DedeSql Object(??? [linkID] = Resource id #6??? [dbHost] = localhost??? [dbUser] = root??? [dbPwd] = ??? [dbName] = dedebbs??? [dbPrefix] = dede_??? [result
显示全部