坏蛋网络

 找回密码
 立即注册

微信登录

只需一步,快速开始

手机动态码快速登录

手机号快速注册登录

搜索

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

[复制链接]
坏蛋网络官方 发表于 2020-1-20 02:43:38 来自手机 | 显示全部楼层 |阅读模式
函数        功能
7 r, f" b, i% G6 q; j7 H( @DB::table($tablename)        获取正确带前缀的表名,转换数据库句柄,
/ r/ |1 {0 |5 T' c8 KDB::delete($tablename, 条件,条数限制)        删除表中的数据
( R: z( M, u3 i2 |5 k; ?DB::insert($tablename, 数据(数组),是否返回插入ID,是否是替换式,是否silent)        插入数据操作
/ R5 ~" j/ X: K2 p+ @- _9 qDB::update($tablename, 数据(数组)条件)        更新操作
, R- X5 X" {8 B) }- t/ h! h0 Y6 UDB::fetch(查询后的资源)        从结果集中取关联数组,注意如果结果中的两个或以上的列具有相同字段名,最后一列将优先。9 j# ^/ N. K0 {$ y2 ]  l5 W
DB::fetch_first($sql)        取查询的第一条数据fetch5 n. a8 ?1 E" I' h- o* d: I
DB::fetch_all($sql)        查询并fetch7 S8 V3 J- U9 v; R  i* p- F  {
DB::result_first($sql)        查询结果集的第一个字段值( }: A: i0 f. U( ?
DB::query($sql)        普通查询
: `; c( p. T& p* n0 eDB::num_rows(查询后的资源)        获得记录集总条数" [" Y- T6 h* `" P
DB::_execute(命令,参数)        执行mysql类的命令
' F' a9 V1 p7 W* a1 ?0 KDB::limit(n,n)        返回限制字串+ ^2 l) u1 o4 w: D" E' |9 B
DB::field(字段名, $pid)        返回条件,如果为数组则返回 in 条件0 J5 h* E, k) O0 M- K9 t
DB:rder(别名, 方法)        排序
+ I4 I6 p  l+ j# |& A2 {注意:由于 X1.5 里增加了SQL的安全性检测。因此,如果你的SQL语句里包含以下开头的函数 load_file,hex,substring,if,ord,char。 或者包含以下操作 intooutfile,intodumpfile,unionselect,(select')都将被拒绝执行。
1 b5 u& v2 j( z, g替换参数        功能
5 q! M4 b0 y, Z/ l: b2 M% a$ h%t        表名,4 p  A% W) L' X1 O8 h
%s        字串,如果是数组就序列化
6 K" L$ s! ]0 _, H$ B% E9 D3 a%f        按 %F 的样式格式化字串( S2 R9 l8 x" W/ a! [
%d        整数" }; n1 P$ x- i# D! q" n
%i        不做处理2 q" b+ h8 |9 v% A
%n        若为空即为0,若为数组,就用',' 分割,否则加引号
& L8 }% j% K* H! C( t- G: H4 f* vC对象,可以有效的利用缓存,并且数据获得都统一在 class/table 目录下,好处是所有的查询都集中和复用。方便维护和升级。默认的T方法有以下默认的获得数据方式。每个数据表还需要看具体的表数据定义函数。#开头的,是 插件表定义,会去插件目录下的table目录下找,所以插件开发也可以用这种方法。# T6 j# y; A* A3 G0 N; g! Y
函数        功能) s; u  m2 \  Z& ?
C::t($tablename')->count()        获取表所有行数
) f" t4 Z, c) M; K* _C::t($tablename')->update(键值,$data)        更新键值数据
4 u$ k+ n' [  z  nC::t($tablename')->delete(键值)        删除键值数据7 `7 B! d0 ]' O
C::t($tablename')->truncate()        清空表
- A8 S+ T* M' k* h! SC::t($tablename')->insert($data, $return_insert_id,$replace)        插入数据) h& c! `+ L1 `0 T2 h
C::t($tablename')->fetch_all($ids)        fetch 数据,可以是单一键值或者多个键值数组; u0 s8 H- s& ?+ j, C
C::t($tablename')->fetch_all_field()        fetch所有的字段名表
  V/ I2 i  L, ]+ n) z* J& BC::t($tablename')->range($start, $limit, $sort)        fetch值域范围% y' k% `1 f% r% B) U) G4 N! ]
C::t($tablename')->optimize()        优化表  @& ?5 A9 L& K( f% M2 L3 T4 I8 G
想说又不敢说,说了又怕被拒绝,拒绝了又怕尴尬,就是这样的。内心很痛苦的那种。
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 | 显示全部楼层
过来看看的
回复

使用道具 举报

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