美文网首页
Tp5·个人规范化数据库操作示例

Tp5·个人规范化数据库操作示例

作者: 三米板 | 来源:发表于2020-04-06 14:20 被阅读0次

插入

Model中创建一个add方法
namespace app\common\model;
use think\Model;

class BaseModel extends Model {
    
    /**
     * 新增
     * @param $data
     * @return mixed
     */
    public function add($data) {
        if(!is_array($data)) {
            exception('传递数据不合法');
        }
        $this->allowField(true)->save($data);
        
        return $this->id;
    }

}

使用:

$data = input('post.');
$data['status'] = 2; //手动更新或者添加某些字段
$id = model('AdminUser')->add($data);//手动调用我们model 中的add方法,返回添加的主键id

更新多个字段

我们更新多个字段的时候,注意where不要合适 where,要使用isUpdate来限制,如下:

$data = input('post.');
$where = ['id'=>$data['id']];
model('AdminUser')->isUpdate(true,$where)->allowfield(true)->save($data) ; 

如果我们把isUpdate改为了where就会报类似于:method not exist:think\db\Query的错误,这一点我们谨记。
另外,我们配合了isUpdate方法,我们就不要使用update方法更新了,我们就要使用save()
//如下同样会报错

#错误示范:$userModel->isUpdate(true,$where)->allowfield(true)->update($data) ; 

更新

这个更新操作和上面的多字段更新,不同的一方面是,我们明确了更新的字段。所以要注意和上面多字段模糊型的更新多加区别。
我们需要准备两个东西,
1:更新的字段以及其值
2:更新数据的条件

$where = [];
$update = ['status'=>config3('enum.admin_user_status.disable')];//更新的数据
$where['id'] = $data['id'];  //更新的条件

执行更新操作

$count = model('AdminUser') ->where($where) ->update($update) ; 
注意

这个update方法,返回了更新数据的数量。
如果要更新的字段,和我们要更新的值一样的话,就会返回0 ,因为和原值相同,没有做更新,并不代表没有更新成功~!!!这一点要注意。

相关文章

  • Tp5·个人规范化数据库操作示例

    插入 使用: 更新多个字段 我们更新多个字段的时候,注意where不要合适 where,要使用isUpdate来限...

  • TP5 Model 功能总结

    简介 tp5的model只做业务层操作,不做具体的链接数据库sql操作。think\db\Connection.p...

  • php-pdo操作mysql类

    使用示例 数据库操作类代码

  • android 面向对象数据库编程

    面向对象数据库编程 我们先看看操作示例 我们可以看到这里操作数据库只是引用了一个对象 从上面的操作示例我们可以看到...

  • TP5ORM操作数据库,关联篇

    前言: 大家在使用tp5的时候,操作数据库的方法有很多,你使用哪一种呢?我个人是比较推荐使用ORM的方式来操作数据...

  • ThinkPHP5源码分析之Db(5.1)

    TP5的数据库相关操作类由 Connection(连接器)、Query(查询器)、Builder(sql生成器)组...

  • thinkphp5 mysql 基本使用

    无聊,边学习,边做下学习笔记....... 首先,在对数据库操作之前,请自觉把tp5的config配置搞好,其他就...

  • Python操作Mysql(PyMySQL)

    使用的相关函数 执行事务函数 查询操作函数 操作示例 数据库连接 使用with使代码更整洁。 创建数据库表TABL...

  • 数据库范式 1NF, 2NF, 3NF的问题与细解

    一. 关于数据冗余与异常 数据库的规范化数据库规范化是一种在数据库中组织数据的技术。 规范化是消除冗余(重复)和不...

  • tp5 数据库操作

    1、查询数据(4种方式) 2、插入数据(3种方式) 注意:插入数据的返回值,insert返回的是影响条数,inse...

网友评论

      本文标题:Tp5·个人规范化数据库操作示例

      本文链接:https://www.haomeiwen.com/subject/ezfbphtx.html