首页 > 代码库 > 黄聪:Discuz!X/数据库操作方法、DB::table、C::t

黄聪:Discuz!X/数据库操作方法、DB::table、C::t

函数功能
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(别名, 方法)排序

注意:由于 X1.5 里增加了SQL的安全性检测。因此,如果你的SQL语句里包含以下开头的函数 load_file,hex,substring,if,ord,char。 或者包含以下操作 intooutfile,intodumpfile,unionselect,(select‘)都将被拒绝执行。

替换参数功能
%t表名,
%s字串,如果是数组就序列化
%f按 %F 的样式格式化字串
%d整数
%i不做处理
%n若为空即为0,若为数组,就用‘,‘ 分割,否则加引号
函数功能
C::t($tablename‘)->count()获取表所有行数
C::t($tablename‘)->update(键值,$data)更新键值数据
C::t($tablename‘)->delete(键值)删除键值数据
C::t($tablename‘)->truncate()清空表
C::t($tablename‘)->insert($data, $return_insert_id,$replace)插入数据
C::t($tablename‘)->fetch_all($ids)fetch 数据,可以是单一键值或者多个键值数组
C::t($tablename‘)->fetch_all_field()fetch所有的字段名表
C::t($tablename‘)->range($start, $limit, $sort)fetch值域范围
C::t($tablename‘)->optimize()优化表

 

原文:http://wiki.blueidea.com/index.php?title=Discuz!X/数据库操作方法

黄聪:Discuz!X/数据库操作方法、DB::table、C::t