坏蛋网络

 找回密码
 立即注册

微信登录

只需一步,快速开始

手机动态码快速登录

手机号快速注册登录

搜索

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

[复制链接]
坏蛋网络官方 发表于 2020-1-20 02:43:38 来自手机 | 显示全部楼层 |阅读模式
函数        功能& z7 ^% O1 F, a2 t7 a: n$ O
DB::table($tablename)        获取正确带前缀的表名,转换数据库句柄,6 v& T0 X% D7 r1 a( b1 ?: o
DB::delete($tablename, 条件,条数限制)        删除表中的数据' U2 v# X1 k+ z9 }
DB::insert($tablename, 数据(数组),是否返回插入ID,是否是替换式,是否silent)        插入数据操作+ M+ Z- l1 X0 [: Q  F6 X
DB::update($tablename, 数据(数组)条件)        更新操作
$ u# O! s$ b+ `# `+ gDB::fetch(查询后的资源)        从结果集中取关联数组,注意如果结果中的两个或以上的列具有相同字段名,最后一列将优先。
2 K3 |+ x1 P  \" X+ pDB::fetch_first($sql)        取查询的第一条数据fetch
7 l; @) k* Y0 y( sDB::fetch_all($sql)        查询并fetch; [* o1 H& l& h, `
DB::result_first($sql)        查询结果集的第一个字段值2 R- D, _" }+ d
DB::query($sql)        普通查询
% `0 z% e. y: G. j9 J& S+ ~DB::num_rows(查询后的资源)        获得记录集总条数
7 e+ b; W1 v, f6 c3 cDB::_execute(命令,参数)        执行mysql类的命令% {- [2 ], ~  J/ N3 o$ l2 N
DB::limit(n,n)        返回限制字串$ B2 v% @; V7 d8 z2 I
DB::field(字段名, $pid)        返回条件,如果为数组则返回 in 条件
5 z! k& q; a% L: \# RDB:rder(别名, 方法)        排序
# A$ x- A/ }0 R2 O, E6 y5 j注意:由于 X1.5 里增加了SQL的安全性检测。因此,如果你的SQL语句里包含以下开头的函数 load_file,hex,substring,if,ord,char。 或者包含以下操作 intooutfile,intodumpfile,unionselect,(select')都将被拒绝执行。3 N7 V* q, C2 {1 z; A) d
替换参数        功能
/ g" D6 G2 t+ \; h# U/ r5 h%t        表名,
. J$ W+ N+ a* g, t%s        字串,如果是数组就序列化
, o5 ?5 u* Q1 G0 ]  J% p# a% \%f        按 %F 的样式格式化字串" y6 @4 z1 g% O* g) H
%d        整数/ y' K  X! e7 S* l( P5 t
%i        不做处理7 z+ A! P" E5 w2 \
%n        若为空即为0,若为数组,就用',' 分割,否则加引号
* F# ^( L" D5 R6 j" ^+ s8 x8 J" MC对象,可以有效的利用缓存,并且数据获得都统一在 class/table 目录下,好处是所有的查询都集中和复用。方便维护和升级。默认的T方法有以下默认的获得数据方式。每个数据表还需要看具体的表数据定义函数。#开头的,是 插件表定义,会去插件目录下的table目录下找,所以插件开发也可以用这种方法。6 N, J! t7 m$ h+ d- Y+ P$ @9 {  \& {
函数        功能
+ M( ?& k  Q" g. v% b1 B# ^, f2 U  ]C::t($tablename')->count()        获取表所有行数) V6 O$ o3 Y9 t
C::t($tablename')->update(键值,$data)        更新键值数据- N' D9 H' y; k
C::t($tablename')->delete(键值)        删除键值数据% X- B$ r8 Y9 Y( a" w" N
C::t($tablename')->truncate()        清空表
# H& I% J6 E2 r- |$ DC::t($tablename')->insert($data, $return_insert_id,$replace)        插入数据! W: q0 U& s% e" L
C::t($tablename')->fetch_all($ids)        fetch 数据,可以是单一键值或者多个键值数组
& w+ G0 Z; n% W# e( ~8 v+ xC::t($tablename')->fetch_all_field()        fetch所有的字段名表
# a4 X; P# ~5 V  e7 yC::t($tablename')->range($start, $limit, $sort)        fetch值域范围8 ~! B% c  f7 M+ k$ b
C::t($tablename')->optimize()        优化表
, ]$ `. z$ x5 E4 G, C
想说又不敢说,说了又怕被拒绝,拒绝了又怕尴尬,就是这样的。内心很痛苦的那种。
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 | 显示全部楼层
过来看看的
回复

使用道具 举报

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