Discuz教程网

[二次开发] Discuz!X/数据库操作方法

[复制链接]
authicon dly 发表于 2015-2-27 19:06:36 | 显示全部楼层 |阅读模式
我这里说的是用DB::操作的
$tablename为去前缀的表名在安装脚本中,可用cdb_代替表前缀
而在DB::XXX相关函数中则直接忽略前缀即可
在下列操作时,如果通过获取$_GET的数据再进行数据库操作,需进行intval()或者daddslashes()

DB::table($tablename)获取正确带前缀的表名,转换数据库句柄参数为去前缀的表明
DB::delete($tablename, 条件,条数限制)删除表中的数据第二个参数可用数组array(键名=>键值)的形式也可用语句代表
第三个参数可选
DB::insert($tablename, 数据(数组),是否返回插入ID,是否是替换式,是否silent)插入数据操作第二个参数可用数组array(键名=>键值)的形式也可用语句代表
第三、四、五个参数可选
DB::update($tablename, 数据(数组),条件)更新操作第二个参数可用数组array(键名=>键值)的形式也可用语句代表
第三个参数可选
DB::fetch(查询后的资源)从结果集中取关联数组,注意如果结果中的两个或以上的列具有相同字段名,最后一列将优先
DB::fetch_first($sql)取查询的第一条数据fetch和普通mysql查询语句一样
DB::fetch_all($sql)查询获取所有数据和普通mysql查询语句一样
DB::result_first($sql)查询结果集的第一个字段值和普通mysql查询语句一样
DB::query($sql)执行普通的mysql语句和普通mysql查询语句一样
DB::num_rows(查询后的资源)获得记录集总条数
DB::_execute(命令,参数)执行mysql类的命令
DB::limit(n,n)返回限制字串
DB::field(字段名, $pid)返回条件,如果为数组则返回 in 条件
DB::order(别名, 方法)排序






上一篇:Discuz帖子表二进制字段含义
下一篇:Discuz开发资料之function_core注释版
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

1314学习网 ( 浙ICP备10214163号 )

GMT+8, 2025-5-1 23:40

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表