dedecms二次开发:dedesql.class.php 数据库类

dedecms二次开发目录点这个:dedecms二次开发教程目录

系统会自动载入 dedesql.class.php 文件,并用

$dsql = $db = new DedeSql(false);

进行初始化数据库连接,因此在工程所有文件中均不需要单独初始化这个类,可直接用 $dsql 或 $db 进行操作,为了防止错误,操作完后不必关闭数据库。

常用的方法:

1、执行一个非查询类型的SQL语句,如 insert 、create 、update 等

$rs = $db->ExecuteNoneQuery($sql);

返回值为是否执行成功。

2、执行一个非查询类型的SQL语句,并返回成功记录数

$rs = $db->ExecuteNoneQuery2($sql);

与上面相比,它返回的是影响的记录数,而不是布尔值

3、返回单个记录

$arr = $db->GetOne($sql);

$dsql 如果不带 limit ,系统会自动加上 limit 0,1

4、执行条件查询语句

$db->SetQuery($dsql);
$db->Execute();
while($arr = $db->GetArray())
{
}
$db->SetQuery($dsql);
$db->Execute();
while($arr = $db->GetArray())
{
}

可以简化为:

$db->Execute(‘me‘,$dsql);
while($arr = $db->GetArray())
{
}
$db->Execute(‘me‘,$dsql);
while($arr = $db->GetArray())

{
}

‘me‘ 为记录集游标,用于区分不同的查询,如:

$db->Execute(‘me‘,$dsql);
while($arr = $db->GetArray())
{
$db->Execute(‘2‘,$dsql2);
while($arr2 = $db->GetArray())
{
}
}
$db->Execute(‘me‘,$dsql);
while($arr = $db->GetArray())
{
$db->Execute(‘2‘,$dsql2);
while($arr2 = $db->GetArray())
{
}
}

像这种情况必须指定一个值区分默认的‘me‘参数,否则会出错

$db->GetArray($rsid,$acctype) 参数
$rsid="me"
$acctype=MYSQL_ASSOC

在查询游标中读取数据还可以用

$db->GetObject($rsid="me");

返回的结果是用类结构表示的值。

5、获取上一个插入的自动递增主键id值

$db->GetLastID();

6、获得查询的总记录数

$db->GetTotalRow($rsid="me")

7、获得MySql的版本号

$db->GetVersion($isformat=true)

默认的情况下会转换成 x.xx 形式浮点数

8、析放某查询的资源

$db->FreeResult($rsid="me");

9、在数据库中是否存在某数据表

$db->IsTable($tbname)

10、重新选择要操作的数据库

$db->SelectDB($dbname);

11、获得数据库连接标识

$db->linkID

获得这个连接标识后,可以直接用mysql相关函数进行数据库操作

在非不得已的情况,项目中一般不使用这个变量。

时间: 2024-10-12 18:56:15

dedecms二次开发:dedesql.class.php 数据库类的相关文章

dedecms二次开发:dedetag.class.php 静态模板类

dedecms二次开发目录点这个:dedecms二次开发教程目录 类文件 include/dedetag.class.php 这个文件是dedecms V5.3及之前版本使用的主要的模板类,它是解析式模板类,并非编译式的(区别是前者通过获得标签位置进行内容替换,后者是直接解析式PHP代码,二次执行) 一.模板语法 织梦模板引擎是一种使用XML名字空间形式的模板解析器,使用织梦解析器解析模板的最大好处是可以轻松的制定标记的属性,感觉上就像在用HTML一样,使模板代码十分直观灵活,新版的织梦模板引擎

dedecms二次开发:dedetemplate.class.php 动态模板类

dedecms二次开发目录点这个:dedecms二次开发教程目录 核心类文件 include/dedetemplate.class.php 用途:用于非核心模块的动态页面或列表页的模板解析,如:member/content_list.php ,通常是在 datalistcp.class.php 中使用,这个类在动态运行的情况下,由于本身是把模板编译成PHP的,因此性能上会优级于旧的解析类,这个方法将在未来版本中作为通用的方式. 一.使用方法: $tpl = new DedeTemplate( 模

DEDEcms二次开发数据表参数

1.程序核心程序目录及简介 /include目录    程序核心目录 config_base.php 环境定义文件.用于检测系统环境,定义工作目录,保存数据库链接信息,引入常用函数等,建议不要修改. config_hand.php 系统配置文件.定义系统常用的配置信息定义,可从后台管理直接生成该文件. config_passport.php 通行证文件 config_rglobals.php 检测系统外部变量 config_rglobals_magic.php 同上 inc_archives_v

dedecms二次开发标签总结

1.获取所有的顶级栏目列表带链接: {dede:channel type='top' row='8' currentstyle='<li><a href='~typelink~' class='thisclass'>~typename~</a></li>"} <li><a href='[field:typelink/]'>[field:typename/]</a></li> {/dede:channe

二、开发环境配置-安装数据库

数据库的安装 1.安装MySQL 一个轻量级的关系型数据库 2.安装MongoDB MongoDB是C++编写的非关系型数据库,基于分布式文件存储的开源数据库系统,存储形式类型JSON对象,字段值可以包含其他文档.数组.文字数组,非诚灵活 下载地址: https://www.mongodb.com/download-center#community 双击安装 bin目录同级下新建data文件夹 进入data文件件,新建db文件夹来存储数据目录 命令行进入bin目录,运行MongoDB服务 mon

dedecms二次开发

安装遇到的问题 修改文件如下 1.date目录下的config.cache.bak.php改成config.cache.php 2install目录下的index.html.install_lock.txt文件删除 ,修改index.php.bak.module-install.php.bak改为index.php.module-install.php 原文地址:https://www.cnblogs.com/caocaoa/p/10773472.html

NX二次开发-UFUN获取一个图层类别的tag UF_LAYER_ask_category_tag

1 NX11+VS2013 2 3 #include <uf.h> 4 #include <uf_ui.h> 5 #include <uf_layer.h> 6 7 8 9 UF_initialize(); 10 11 //获取一个图层类别的tag 12 tag_t category = NULL_TAG; 13 UF_LAYER_ask_category_tag("01.Tangkl_Solids", &category); 14 15 /

开源系统_二次开发(转)

转自http://www.phpchina.com/portal.php?mod=view&aid=40204, 更多详细资料请参看原文 最好最实用的二次开发教程 ◆二次开发 什么是二次开发? 二次开发,简单的说就是在现有的软件上进行定制修改,功能的扩展,然后达到自己想要的功能和效果,一 般来说都不会改变原有系统的内核. 为什么要二次开发? 随着信息化技术的不断发展,IT行业涌现出了一系列优秀的开源作品,其作者或是个人,或是项目小组,或 是软件公司.选择和应用这些优秀的开源软件,并在此基础上进行

最好最实用的PHP二次开发教程

◆二次开发 1.什么是二次开发? 二次开发,简单的说就是在现有的软件上进行定制修改,功能的扩展,然后达到自己想要的功能和效果,一般来说都不会改变原有系统的内核. 2.为什么要二次开发? 随着信息化技术的不断发展,IT行业涌现出了一系列优秀的开源作品,其作者或是个人,或是项目小组,或是软件公司.选择和 应用这些优秀的开源软件,并在此基础上进行符合业务需求的二次开发,将给企业节省信息化成本(时间成本及开发成本)的同时,更能带来技术上的保障.这就是 我们常听的:站在巨人的肩膀上,你将看的更远.所以国内