本篇对数据库操作函数db进行讲解。DB::table($tablename)获取正确带前缀的表名,转换数据库句柄,

DB::delete($tablename, 条件,条数限制)删除表中的数据

DB::insert($tablename, 数据(数组),是否返回插入ID,是否是替换式,是否silent)插入数据操作

DB::update($tablename, 数据(数组)条件)更新操作

DB::fetch(查询后的资源)从结果集中取关联数组,注意如果结果中的两个或以上的列具有相同字段名,最后一列将优先。

DB::fetch_first($sql)取查询的第一条数据fetch

DB::fetch_all($sql)查询并fetch

DB::result_first($sql)查询结果集的第一个字段值

DB::query($sql)普通查询

DB::num_rows(查询后的资源)获得记录集总条数

DB::_execute(命令,参数)执行mysql类的命令

DB::limit(n,n)返回限制字串

DB::field(字段名, $pid) 返回条件,如果为数组则返回 in 条件

DB::order(别名, 方法)排序

注意事项:所有数据在插入数据库之前,均需要进行addslashes()处理,以免特殊字符未经转义在插入数据库的时候出现错误。Discuz!中所有通过 GET, POST, FILE,取得的变量默认情况下已经使用了addslashes()进行了转义,不必重复进行。如果数据处理必要(例如用于直接显示),可以使用 stripslashes() 恢复,但数据在插入数据库之前必须再次进行转义。缓存文件中,一般对缓存数据的值采用 addcslashes($string, ''\')进行转义。

最常见的查询数据库举例:

获取单条数据:$rs = DB::fetch_first("SELECT * FROM ".DB::table('common_member')." WHERE uid=1");

这里获取的是UID为1的用户的数据,但是discuz内还有一个getuserbyuid可以获取用户数据

获取多条数据:$rs = DB::fetch_all("SELECT * FROM " .DB::table('common_member')." WHERE uid in(1,2,3,4,5,6)");

这里获取的是UID为1 2 3 4 5 6的用户的信息

插入数据讲解

调用方式:DB::insert()

说明:关于是否是否。只要值为1就是 是,否就直接无视或者留空

举例:

首先是存在一个表名为pre_test

表内有以下字段:id(递增) name uid 字段类型就别管了if(DB::insert('test',array('id'=>NULL,'name'=>'me','uid'=>1))) showmessage("数据插入成功");

说明:这边的数组的键名就是数据表中的字段名,键值就是插入的对应字段的值DB::fetch_all('SELECT * FROM %t WHERE panel=%d', array($this->_table, $panel), 'uid');

DB::fetch_all('SELECT * FROM %t WHERE uid=%d ORDER BY dateline DESC', array($this->_table, $uid), 'bid') : array();

注:

DZ中%号会当做参数,需要你传入,首先第一个你可以使用DB::table($this->_table)代替,第二个你可以用实实在在的表明,第三个的话你可以吧数值计算出来后填进去,这样的话应该就不会出现问题了

本篇对函数操作进行总结和整理,更多相关知识请关注php中文网。

相关推荐:

discuz mysql查询_Discuz!X/数据库 DB:: 函数操作方法相关推荐

  1. discuz mysql类_Discuz X2二次开发之数据库操作 DB类

    Discuz X2的数据库操作类主要包括以下几个: DB::result_first 返回SQL查询的唯一字段的唯一值,查询结果是字符 DB::fetch_first 返回SQL查询的多个字段的值,查 ...

  2. ecshop mysql 报错_ecshop数据库操作函数

    ecshop数据库操作函数 eschop二次开发一些常见的开发例子.来谈谈ecshop的数据库类和方法是如何处理数据库.让我们熟练掌握ecshop数据库的操作. 1:ecshop的数据库类实例子化对象 ...

  3. discuz mysql类_Discuz论坛教程之数据库操作DB类和C::t类介绍

    Discuz论坛教程之数据库操作DB类和C::t类介绍 类定义文件 DB类: 文件\source\class\class_core.php [php]view plaincopy classDB ex ...

  4. discuz mysql 配置_Discuz如何修改数据库配置?

    ## 如何修改Discuz数据库配置? 当您的数据库信息发生变化的时候,Discuz网站系统需要修改的位置三处: 1.路径:/wwwroot/config/config_global.php,修改如下 ...

  5. discuz mysql 编码_Discuz!X 下如何使用 Tools 来转换数据库编码

    一.前提准备 首先需要安装好最新版本的 Tools,安装方法与以前的完全一样. Tools for Discuz!X 下载地址:http://www.discuz.net/thread-1667317 ...

  6. mysql数据库查询要注意事项_三种mysql高级查询技巧_数据库_mysql函数_课课家

    大家都知道GROUP BY,但是大家知道GROUP BY后面可以带哪些函数吗?今天给大家介绍下GROUP BY后面可以带的函数. 1GROUP_CONCAT 在MySQL中,你可以获取表达式组合的连接 ...

  7. MySQL查询数据字典_存储过程_函数_视图元数据_表元数据_触发器

    文章目录 一.查询所有的存储过程 二.查询某个数据库下的存储过程 三.查询所有的函数 四.查询某个数据库下的函数 五.查看存储过程详情 六.查看函数详情 七.查看存储过程的创建源码 八.查看函数的创建 ...

  8. discuz mysql 优化_Discuz X系统:【效率机制】-【MySQL 优化】详解

    在整个 Discuz! X2.5 产品中,为了提供效率,需要对 SQL 做相应的优化.有时候不能忽略一些细小的优化,当出现过多未优化的细节时,也能带来致命的负载问题. 延迟更新机制 例如:首页的在线人 ...

  9. mysql 查询 集合_MySQL使用集合函数进行查询操作实例详解

    本文实例讲述了MySQL使用集合函数进行查询操作.分享给大家供大家参考,具体如下: COUNT函数 SELECT COUNT(*) AS cust_num from customers; SELECT ...

最新文章

  1. c#加粗代码_RichTextBox,怎么用c#代码根据Index和Length指定的范围的内容进行变色或加粗处理?...
  2. python的_thread模块来实现多线程(python核心编程例子)
  3. effective C++ 条款 47:使用traits classes表现类型信息
  4. MongoDB基础教程系列--目录结构
  5. VTK:Utilities之Animation
  6. 使用caffe训练faster-rcnn时遇到的问题总结
  7. 征文通知 | 2018年全国知识图谱与语义计算大会
  8. matlab卷积完为什么要归一化,为什么要进行反归一化处理,而且反归一化什么意思?...
  9. 售前十年,两种人生,多重感悟!
  10. http://kylin.apache.org/development/new_metadata.html
  11. 计算机基础知识表格斜线,word表格斜线,教您word表格添加斜线的方法
  12. Premiere 关键帧缩放
  13. B. 在哈尔滨的寒风中
  14. arcgis pro深度学习教程
  15. 用计算机怎么算吸光度的回归方程,Pt含量与UV-Vis吸光度的线性回归拟合.doc
  16. 利用python做词频统计
  17. python 报错:No connection adapters were found for '%s' % url)
  18. day01 HTMLCSS
  19. javascript 中 parentNode,childNodes、children 应用
  20. HCIE--mac地址 详解

热门文章

  1. 先学vba还是python-以Excel处理为目的学习python还是VBA?
  2. NCBI中各个符号代表意思
  3. 04 面向对象之:三大特性:继承(已讲),封装,多态。
  4. LOFTER72D94FF8E0603DBE38066DB525285F1C
  5. js-键盘事件案例-小人快跑
  6. [转载]使用Java生成带有下划线字体的文字
  7. 插值法补齐缺失数据_一种挽救你缺失数据的好方法——多重补插
  8. 分布式系统之----CAP理论
  9. CDA Level I 模拟题(3)【附答案解析】
  10. 《MAC OS X 技术内幕》读书笔记第一章:MAC OS X的起源