“Discuz!X/数据库操作方法”的版本间的差异
来自Blueidea
< Discuz!X
小 |
小 |
||
第27行: | 第27行: | ||
|DB::limit(n,n)||返回限制字串 | |DB::limit(n,n)||返回限制字串 | ||
|- | |- | ||
− | |DB::field(字段名, $pid)|| | + | |DB::field(字段名, $pid)|| 返回条件,如果为数组则返回 in 条件 |
|- | |- | ||
|DB::order(别名, 方法)||排序 | |DB::order(别名, 方法)||排序 |
2013-03-11T11:37:03的版本
函数 | 功能 |
---|---|
DB::table($tablename) | 获取正确带前缀的表名,转换数据库句柄, |
DB::delete($tablename, 条件,条数限制) | 删除表中的数据 |
DB::insert($tablename, 数据(数组),是否返回插入ID,是否是替换式,是否silent) | 插入数据操作 |
DB::update($tablename, 数据(数组)条件) | 更新操作 |
DB::fetch(查询后的资源) | 从结果集中取关联数组,注意如果结果中的两个或以上的列具有相同字段名,最后一列将优先。 |
DB::fetch_first($sql) | 取查询的第一条数据fetch |
DB::fetch_all($sql) | 查询并fetch |
DB::result_first($sql) | 查询结果集的第一个字段值 |
DB::query($sql) | 普通查询 |
DB::num_rows(查询后的资源) | 获得记录集总条数 |
DB::_execute(命令,参数) | 执行mysql类的命令 |
DB::limit(n,n) | 返回限制字串 |
DB::field(字段名, $pid) | 返回条件,如果为数组则返回 in 条件 |
DB::order(别名, 方法) | 排序 |
注意:由于 X1.5 里增加了SQL的安全性检测。因此,如果你的SQL语句里包含以下开头的函数 load_file,hex,substring,if,ord,char。 或者包含以下操作 intooutfile,intodumpfile,unionselect,(select')都将被拒绝执行。
替换参数 | 功能 |
---|---|
%t | 表名, |
%s | 字串,如果是数组就序列化 |
%f | 按 %F 的样式格式化字串 |
%d | 整数 |
%i | 不做处理 |
%n | 若为空即为0,若为数组,就用',' 分割,否则加引号 |
函数 | 功能 |
---|---|
C::t($tablename')->count() | 获取表所有行数 |
C::t($tablename')->update(键值,$data) | 更新键值数据 |
C::t($tablename')->delete(键值) | 删除键值数据 |
C::t($tablename')->truncate() | 清空表 |
C::t($tablename')->insert($data, $return_insert_id,$replace) | 插入数据 |
C::t($tablename')->fetch_all($ids) | fetch 数据,可以是单一键值或者多个键值数组 |
C::t($tablename')->fetch_all_field() | fetch所有的字段名表 |
C::t($tablename')->range($start, $limit, $sort) | fetch值域范围 |
C::t($tablename')->optimize() | 优化表 |