坏蛋网络

 找回密码
 立即注册

微信登录

只需一步,快速开始

手机动态码快速登录

手机号快速注册登录

搜索

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

[复制链接]
坏蛋网络官方 发表于 2020-1-20 02:43:38 来自手机 | 显示全部楼层 |阅读模式
函数        功能
. Y" G5 c4 V& Z3 FDB::table($tablename)        获取正确带前缀的表名,转换数据库句柄,
+ y& W0 _# T8 Y" C7 [DB::delete($tablename, 条件,条数限制)        删除表中的数据
: }. |- B; F. P/ `DB::insert($tablename, 数据(数组),是否返回插入ID,是否是替换式,是否silent)        插入数据操作
) O# [) E! W5 [( Y) Q) z$ FDB::update($tablename, 数据(数组)条件)        更新操作
4 b6 A9 A+ T$ n! O) h" ^, eDB::fetch(查询后的资源)        从结果集中取关联数组,注意如果结果中的两个或以上的列具有相同字段名,最后一列将优先。
# ?  B* j" \5 y( N# F  k1 ]DB::fetch_first($sql)        取查询的第一条数据fetch
) I0 T3 U2 ?  R4 p2 X  FDB::fetch_all($sql)        查询并fetch
( W. L) E, ~" \DB::result_first($sql)        查询结果集的第一个字段值8 o8 X2 e1 Y: E; M+ m; [! ?8 j
DB::query($sql)        普通查询
  S2 h* P/ u! O# q8 E) M9 sDB::num_rows(查询后的资源)        获得记录集总条数
8 k& i+ b9 K' Y) y* z5 N/ IDB::_execute(命令,参数)        执行mysql类的命令
2 V& k1 R! U# d9 z+ t4 Y6 NDB::limit(n,n)        返回限制字串4 `2 ]* i& y. M' N
DB::field(字段名, $pid)        返回条件,如果为数组则返回 in 条件. c8 W. u" i1 r6 K8 {% B
DB:rder(别名, 方法)        排序
& k" J# r2 m5 Q+ k9 C7 o, U- |5 o注意:由于 X1.5 里增加了SQL的安全性检测。因此,如果你的SQL语句里包含以下开头的函数 load_file,hex,substring,if,ord,char。 或者包含以下操作 intooutfile,intodumpfile,unionselect,(select')都将被拒绝执行。. @/ H( \  p% g" a4 m
替换参数        功能; Z) t9 @5 ]$ k6 }+ I
%t        表名,; C" `/ Z" m5 `
%s        字串,如果是数组就序列化
0 Y8 h/ r, [. i/ X& t%f        按 %F 的样式格式化字串
8 |+ n( U: h4 L+ w5 m%d        整数
* D& a& u1 _. x8 a- T4 a%i        不做处理, h: [! n2 y  x5 E1 j
%n        若为空即为0,若为数组,就用',' 分割,否则加引号+ T' ?6 D* r2 S; g
C对象,可以有效的利用缓存,并且数据获得都统一在 class/table 目录下,好处是所有的查询都集中和复用。方便维护和升级。默认的T方法有以下默认的获得数据方式。每个数据表还需要看具体的表数据定义函数。#开头的,是 插件表定义,会去插件目录下的table目录下找,所以插件开发也可以用这种方法。
; F( O) c% h# {. P  i- X函数        功能
0 ~4 e( N7 ?6 U) y$ cC::t($tablename')->count()        获取表所有行数! D" P; D* G+ j
C::t($tablename')->update(键值,$data)        更新键值数据% V' e9 l/ ^4 \! V7 s* A/ k7 f
C::t($tablename')->delete(键值)        删除键值数据/ E+ @6 G5 B0 E2 b, Z4 B$ {
C::t($tablename')->truncate()        清空表* Z. u% }4 ^: ?2 N" _' }
C::t($tablename')->insert($data, $return_insert_id,$replace)        插入数据
; _6 ]8 D( q: r6 yC::t($tablename')->fetch_all($ids)        fetch 数据,可以是单一键值或者多个键值数组9 e/ g2 O1 z: H5 x6 p( O( t7 ?: j
C::t($tablename')->fetch_all_field()        fetch所有的字段名表8 A9 m% \% `; l1 t
C::t($tablename')->range($start, $limit, $sort)        fetch值域范围. U6 t5 A# t3 v$ a- n
C::t($tablename')->optimize()        优化表* i" D7 C( m8 n3 `- Q/ ]4 T- o. `! U# @( V
想说又不敢说,说了又怕被拒绝,拒绝了又怕尴尬,就是这样的。内心很痛苦的那种。
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 | 显示全部楼层
过来看看的
回复

使用道具 举报

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