坏蛋网络

 找回密码
 立即注册

微信登录

只需一步,快速开始

手机动态码快速登录

手机号快速注册登录

搜索

[DZ教程] Discuz教程:数据库操作方法

[复制链接]
坏蛋网络官方 发表于 2020-1-20 02:43:38 来自手机 | 显示全部楼层 |阅读模式
函数        功能- U- P6 u- o( h+ S8 d2 B% b/ L
DB::table($tablename)        获取正确带前缀的表名,转换数据库句柄,1 \+ q# D$ U6 r! a
DB::delete($tablename, 条件,条数限制)        删除表中的数据
, N, ?8 s. V3 T0 [% mDB::insert($tablename, 数据(数组),是否返回插入ID,是否是替换式,是否silent)        插入数据操作
8 ?& D4 c7 w5 [DB::update($tablename, 数据(数组)条件)        更新操作# e4 w! y( k7 C4 F8 }
DB::fetch(查询后的资源)        从结果集中取关联数组,注意如果结果中的两个或以上的列具有相同字段名,最后一列将优先。/ l. v" p( d! T) @
DB::fetch_first($sql)        取查询的第一条数据fetch
9 X; @8 r" Z! V  L' k: ]- U% ~7 o7 j% EDB::fetch_all($sql)        查询并fetch9 Y& y' w( n* {; q( T& J; L. K
DB::result_first($sql)        查询结果集的第一个字段值
& l3 Q; g9 H) o- L. x% w# c- YDB::query($sql)        普通查询
. }' x" \5 [$ g" t3 `DB::num_rows(查询后的资源)        获得记录集总条数
( O2 p1 G$ ?/ hDB::_execute(命令,参数)        执行mysql类的命令7 z, B: ]$ B6 e6 _  P: q
DB::limit(n,n)        返回限制字串% F  D. a7 S" B  M3 \, G
DB::field(字段名, $pid)        返回条件,如果为数组则返回 in 条件5 E/ W& H+ P$ n$ W* J" p4 o! S
DB:rder(别名, 方法)        排序" u% E6 q) W+ r- m& C/ S$ y
注意:由于 X1.5 里增加了SQL的安全性检测。因此,如果你的SQL语句里包含以下开头的函数 load_file,hex,substring,if,ord,char。 或者包含以下操作 intooutfile,intodumpfile,unionselect,(select')都将被拒绝执行。
& l4 J. ?1 D; C; [替换参数        功能
* I+ E) l; g9 T* J%t        表名,  D5 [0 I* ]9 u/ Y! S& m
%s        字串,如果是数组就序列化, U4 `$ l+ u; b& l1 q$ e
%f        按 %F 的样式格式化字串0 O( ^3 U8 J' Z& u# K$ _( K* Q
%d        整数
5 V& L( Q1 \$ K7 E%i        不做处理6 O& y! v) b6 T6 p0 G, a7 E
%n        若为空即为0,若为数组,就用',' 分割,否则加引号3 e  o4 v9 P0 j0 n# x
C对象,可以有效的利用缓存,并且数据获得都统一在 class/table 目录下,好处是所有的查询都集中和复用。方便维护和升级。默认的T方法有以下默认的获得数据方式。每个数据表还需要看具体的表数据定义函数。#开头的,是 插件表定义,会去插件目录下的table目录下找,所以插件开发也可以用这种方法。
$ ]8 W2 F  p2 X- X6 A/ Y函数        功能& k3 y2 t1 K: A
C::t($tablename')->count()        获取表所有行数4 O4 W8 w, I& H6 v
C::t($tablename')->update(键值,$data)        更新键值数据9 `9 K/ Z) n8 b
C::t($tablename')->delete(键值)        删除键值数据
& c7 q0 Y4 H( k- ^C::t($tablename')->truncate()        清空表
( [! c0 H- ~4 g6 {C::t($tablename')->insert($data, $return_insert_id,$replace)        插入数据: q& K" i) ~% h. N3 [
C::t($tablename')->fetch_all($ids)        fetch 数据,可以是单一键值或者多个键值数组4 Z1 Q8 @& u1 V( z2 {" ~, }6 m# f& N
C::t($tablename')->fetch_all_field()        fetch所有的字段名表( n9 _8 r# q; D3 c
C::t($tablename')->range($start, $limit, $sort)        fetch值域范围
. o: _7 O2 k& E) IC::t($tablename')->optimize()        优化表
9 ?' B. c* L* s6 w
想说又不敢说,说了又怕被拒绝,拒绝了又怕尴尬,就是这样的。内心很痛苦的那种。
yyc男神 发表于 2020-1-20 12:50:19 | 显示全部楼层
写的真的很不错
回复

使用道具 举报

张红霞 发表于 2020-1-21 04:39:20 | 显示全部楼层
好好 学习了 确实不错
回复

使用道具 举报

666男神 发表于 2020-1-21 04:58:42 | 显示全部楼层
我抢、我抢、我抢沙发~
回复

使用道具 举报

672815626 发表于 2020-1-21 12:01:04 | 显示全部楼层
前排支持下
回复

使用道具 举报

 shu1332725 发表于 2020-1-22 03:23:25 | 显示全部楼层
回复

使用道具 举报

123男神 发表于 2020-1-22 12:08:32 | 显示全部楼层
不错不错,楼主您辛苦了。。。
回复

使用道具 举报

hgfhgf 发表于 2020-1-22 14:34:36 | 显示全部楼层
回复

使用道具 举报

全村的希望 发表于 2020-1-23 04:36:07 | 显示全部楼层
我是个凑数的。。。
回复

使用道具 举报

起什么名字呢? 发表于 2020-1-23 10:42:50 | 显示全部楼层
过来看看的
回复

使用道具 举报

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