码迷,mamicode.com
首页 > 数据库 > 详细

ThinkPHP5实用的数据库操作方法【持续更新】

时间:2019-08-29 20:07:30      阅读:139      评论:0      收藏:0      [点我收藏+]

标签:ret   main   value   exception   sql函数   更新   think   fun   exce   

1、update方法总结

  /**
     * 设置记录的某个字段值
     * 支持使用数据库字段和方法
     * @access public
     * @param string|array $field 字段名
     * @param mixed        $value 字段值
     * @return integer
     */
    function setField($field, $value = ‘‘){};
//设置某个字段的值,适用场景:适用于用户积分清零、余额清零等类似操作 Db::name(‘table‘)->where(‘id‘,1)->setField(‘field‘,0);
 

/**
     * 字段值(延迟)增长
     * @access public
     * @param string  $field    字段名
     * @param integer $step     增长值
     * @param integer $lazyTime 延时时间(s)
     * @return integer|true
     * @throws Exception
     */
    public function setInc($field, $step = 1, $lazyTime = 0){};
//自增某个字段的值,参数2不传时默认为自增1,适用场景:适用于用户积分增加、余额增加等类似操作,需要延时更新则传入第三个参数(单位秒), Db::name(‘table‘)->where(‘id‘,1)->setInc(‘field‘,2);

/**
     * 字段值(延迟)减少
     * @access public
     * @param string  $field    字段名
     * @param integer $step     减少值
     * @param integer $lazyTime 延时时间(s)
     * @return integer|true
     * @throws Exception
     */
    public function setDec($field, $step = 1, $lazyTime = 0){};
//自减某个字段的值,参数2不传时默认为自减1,适用场景:适用于用户积分扣除、余额扣除等类似操作,需要延时更新则传入第三个参数(单位秒), Db::name(‘table‘)->where(‘id‘,1)->setDec(‘field‘,2);


//自增或自减多个字段的值,raw方法内支持SQL函数,适用场景:适用于同时更新用户累计余额、当前余额等类似操作
    Db::name(‘table‘)->where(‘id‘,1)->update([
        ‘total_remain‘ => Db::raw("total_remain+100"),
        ‘remain‘       => Db::raw("remain+100"),
    ]);


 

 

ThinkPHP5实用的数据库操作方法【持续更新】

标签:ret   main   value   exception   sql函数   更新   think   fun   exce   

原文地址:https://www.cnblogs.com/shengxihui/p/11431658.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!