坏蛋网络

 找回密码
 立即注册

微信登录

只需一步,快速开始

手机动态码快速登录

手机号快速注册登录

搜索

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

[复制链接]
坏蛋网络官方 发表于 2020-1-20 02:43:38 来自手机 | 显示全部楼层 |阅读模式
函数        功能
: r, o7 Y1 ]9 @. v* i( [DB::table($tablename)        获取正确带前缀的表名,转换数据库句柄,* `* {! r' C6 b6 ^3 H
DB::delete($tablename, 条件,条数限制)        删除表中的数据9 n* L% C1 _* C* B+ j
DB::insert($tablename, 数据(数组),是否返回插入ID,是否是替换式,是否silent)        插入数据操作, o5 Y- B7 \$ G4 \7 U
DB::update($tablename, 数据(数组)条件)        更新操作9 K7 q% |0 {- Q) J
DB::fetch(查询后的资源)        从结果集中取关联数组,注意如果结果中的两个或以上的列具有相同字段名,最后一列将优先。
, ~8 G( t- `9 v$ H% QDB::fetch_first($sql)        取查询的第一条数据fetch5 i( U/ O, ^+ X3 u1 x4 s" d* G) @
DB::fetch_all($sql)        查询并fetch
, ?& X5 `. l" p% Y4 j( ~DB::result_first($sql)        查询结果集的第一个字段值
" A' i2 F- L' i* E* Y5 F. j$ o1 xDB::query($sql)        普通查询
! i+ N7 P7 D+ K- u8 e8 gDB::num_rows(查询后的资源)        获得记录集总条数; W+ c) @' O! t6 n+ Y: z
DB::_execute(命令,参数)        执行mysql类的命令
) v- E. @5 e- A4 E+ l3 qDB::limit(n,n)        返回限制字串
& L7 O3 h# I1 S+ l) m! D5 [2 ADB::field(字段名, $pid)        返回条件,如果为数组则返回 in 条件
+ p3 y; D$ [) ^' n8 |DB:rder(别名, 方法)        排序$ L- Y5 {+ O) i
注意:由于 X1.5 里增加了SQL的安全性检测。因此,如果你的SQL语句里包含以下开头的函数 load_file,hex,substring,if,ord,char。 或者包含以下操作 intooutfile,intodumpfile,unionselect,(select')都将被拒绝执行。* e5 Z' c9 ^& T. A
替换参数        功能2 I/ C0 _& n$ R0 ?  h, L
%t        表名,
# c/ N1 C1 g$ [+ K, l%s        字串,如果是数组就序列化! p& H6 D; K1 i% H3 O8 J1 d7 J
%f        按 %F 的样式格式化字串. M4 A/ W! g, a. \- R0 |4 H
%d        整数, N0 m+ x) W5 @# @7 A& Q2 B4 t6 x
%i        不做处理
. J, V8 ~1 G6 t" {4 \* d* ^, `6 a3 j%n        若为空即为0,若为数组,就用',' 分割,否则加引号
& w; U* P# W! X2 lC对象,可以有效的利用缓存,并且数据获得都统一在 class/table 目录下,好处是所有的查询都集中和复用。方便维护和升级。默认的T方法有以下默认的获得数据方式。每个数据表还需要看具体的表数据定义函数。#开头的,是 插件表定义,会去插件目录下的table目录下找,所以插件开发也可以用这种方法。
# K6 d( r1 i$ `函数        功能2 ^7 v( @; D* A# Q
C::t($tablename')->count()        获取表所有行数
" k1 g: R  o( _) q1 U9 oC::t($tablename')->update(键值,$data)        更新键值数据
8 l$ I5 K* m* Z2 r3 vC::t($tablename')->delete(键值)        删除键值数据
5 d& P( Y+ @- ~9 ]4 X# \C::t($tablename')->truncate()        清空表
" b! F( z( U6 O* b2 x# aC::t($tablename')->insert($data, $return_insert_id,$replace)        插入数据& a* r; O  k& y4 M& e8 k
C::t($tablename')->fetch_all($ids)        fetch 数据,可以是单一键值或者多个键值数组; U( D0 @! l3 T
C::t($tablename')->fetch_all_field()        fetch所有的字段名表/ v0 t$ a4 R1 ?; d* }+ S1 R
C::t($tablename')->range($start, $limit, $sort)        fetch值域范围6 g2 b9 l) ?4 v
C::t($tablename')->optimize()        优化表
& r- ?0 Z) Z: k0 b* X0 U
想说又不敢说,说了又怕被拒绝,拒绝了又怕尴尬,就是这样的。内心很痛苦的那种。
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 | 显示全部楼层
过来看看的
回复

使用道具 举报

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