QQ咨询 官方微信

添加微信好友

官方小程序

百度小程序

微信小程序

头条小程序

关于我们

Pbootcms

pbootcms二次开发数据库操作方法

 shitouadmin  2025-09-10 12:10:06
一、通过Db类操作数据库
  1. use core\basic\Db; //引用Db类文件
可以使用以下常用方法
  1. Db::table('ay_user')->select()//执行连贯操作方法 
  2.  
  3. Db::all('select * from ay_user')//执行sql  
  4.  
  5. $db = new Db();//对象方式 
  6. $db->table('ay_user')->select()//执行连贯操作方法 
  7. $db->all('select * from ay_user')//执行原生操作方法 
二、在Model类下使用
  1. use core\basic\Model; 
使用方法和上面类似 但是此时可以写成:
  1. parent::table(“ay_user”)->where() 
后边可以跟所有常用连贯操作


三、常用连贯操作
  1. select($where)获取多条数据,传递一个where条件,数组或者字符串 
  2. find($where)获取一条数据,传递一个where条件,数组或者字符串 
  3. column($fields, $key)返回指定字段数据数组,可选$key, 传递字段名字符串或数字数组,单个字段,返回一维数组,如果多个字段,返回二维数组数 
  4. value($field)返回指定字段的一条数据的值 
  5. max($field) 返回指定列最大值 
  6. min($field) 返回指定列最小值 
  7. avg($field) 返回指定列平均值 
  8. sum($field) 返回指定列合计值 
  9. insert($data, $batch)   插入数据,可选传递$data一维或二维数据数组,未传递时使用data()数据,可选$batch是否批量一次性插入,默认true 
  10. insertGetId($data, $batch)  插入数据返回最后一个ID,可选传递$data一维或二维数据数组,未传递时使用data()数据,可选$batch是否批量一次性插入,默认true 
  11. update($data)   更新数据,可选传递$data一维数组或字符串,如:"username='xsh'",未传递时使用data()数据 
  12. setField($field, $value)    更新指定字段 
  13. setInc($field, $value)  字段自增,默认value为1 
  14. setDec($field, $value)  字段自减,默认value为1 
  15. delete($data, $key) 删除数据,可选data使用字符串或数组设置主键值,可选$key设置主键 
  1. table($table)   接收完整表名,可以是字符串、数组,'ay_user',array('ay_user'=>'a','ay_role'
  2. name($table)    接收表名,可以是字符串、数组,'user',array('user'=>'a','role'
  3. alias($alias)   设置表别名,只适合单表查询时,传递字符串,'a' 
  4. distinct($flag) 设置返回非重复数据,可选传递字布尔值,默认true 
  5. field($field)   设置返回数据字段,可以为字符串、数组,'username,passwd',array('username'=>'uname','passwd'=>'pwd'
  6. where($where,$inConnect, $outConnect)   设置条件,可多次调用,可以为字符串、数组,多次调用本方法时与前面条件使用AND连接,$where参数数组内部的条件默认使用AND连接,'id=1',array('id'=>1,'age>3'
  7. exists($subsql) 设置EXISTS查询,传递子查询或闭包子查询,支持用闭包函数连贯查询构建语句 
  8. notExists($subSql)  设置NOT EXISTS查询,传递子查询或闭包子查询,支持用闭包函数连贯查询构建语句 
  9. in($field, $range)  传递字段名和范围数据,可多次调用,范围参数接受字符串、数组或子查询,'username','1,2,3''username',array(1,2,3); 
  10. notIn($field, $range)   传递字段名和范围数据,可多次调用,范围参数接受字符串、数组或子查询,'username','1,2,3''username',array(1,2,3); 
  11. order($order)   设置排序,可以为字符串、数组,如"id DESC,name",array('id'=>'DESC','name'
  12. limit($limit)   设置限制,可接受:单个参数数,如 1,单个参数字符串,如'1,10',两个参数数字,如:1,10 
  13. group($group)   设置分组,可以传递字符串、数字数组,如"name,sex",array('name','sex'
  14. having($having, $inConnect, $outConnect)    分组查询时条件语句,可多次调用,可以为字符串、数组,多次调用本方法时与前面条件使用AND连接,$where参数数组内部的条件默认使用AND连接 
  15. join($join) 设置多表连接查询,可多次调用,可以为一维或二维数组,array('table','a.id=b.id','INNER'),第一个参数为数据表,第二个参数为ON条件,第三个参数为类型 
  16. like($field, $keyword, $matchType)  关键字条件匹配,$field支持数组或点分字符串传递多个字段,$matchType匹配模式,默认为all,可选left,right 
  17. notLike($field, $keyword, $matchType)   关键字条件不匹配,$field支持数组或点分字符串传递多个字段,$matchType匹配模式,默认为all,可选left,right 
  18. union($subSql, $isAll)  设置多表合并查询, 可多次调用,子查询可以使用数字数组传递多个,isAll决定是否UNION ALL 
  19. page($doPage, $startPage, $pageSize)    设置分页,参数一是否分页,参数二起始页,参数三分页大小 
  20. data($data) 待插入或更新数据数组,分解insert、update函数,实现 table($table)->data($data)->insert(); 
  21. from($subSql)   接受子查询或闭包子查询from(function ($query) {return $query->table('ay_user')->select(false);}) 
  22. relation($field, $array)    生成待插入或更新的关联数据数组,如 一个用户对应多个角色表数据插入,relation($ucode,$rcodes) 
  23. showSql()   设置显示输出SQL语句到页面,可选传递布尔值 
  24. showRs()    设置直接输出结果到页面,可选传递布尔值 


¥ 打赏
×
如果您觉得文章帮助了您就打赏一下吧
非常感谢你的打赏,我们将继续分享更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏

微信扫一扫打赏

本文《pbootcms二次开发数据库操作方法》发布于石头博客文章,作者:shitouadmin,如若转载,请注明出处:https://www.pweb123.com/cms/pbootcms/1224.html,否则禁止转载,谢谢配合!

文章点评

我来说两句 已有0条评论
点击图片更换

添加微信好友

添加微信好友

微信小程序

百度小程序