• laravel5.6 操作数据 Eloquent ORM


    建立Users模型

     1 <?php
     2 namespace AppModelEloquentAdmin;
     3  
     4 use IlluminateDatabaseEloquentModel;
     5  
     6 class Users extends Model
     7 {
     8     //指定表名
     9     protected $table="users";
    10  
    11     //指定id
    12     protected $primaryKey="id";
    13  
    14     //指定允许批量的字段
    15     protected $fillable=['name','age'];
    16  
    17     //指定不允许批量赋值的字段
    18     protected $guarded=[];
    19 
    20     //连接多数据库配置  默认使用'mysql' 
    21     protected $connection = 'mysql';
    22  
    23     //自动维护时间戳  默认是'true' 
    24     public $timestamps=true;
    25  
    26     //返回当前时间的时间戳,进入数据库,输出时,可以输出格式化好的时间
    27     protected function getDateFormat()
    28     {
    29         return time();
    30     }
    31  
    32     //设置之后,返回的就是数据表中的时间戳
    33     protected function asDateTime($value)
    34     {
    35         return $value;
    36     }
    37 }

    引用Users模型

    use AppModelEloquentAdminUsers;

    ORM 查

     1 //all() 查询所有数据  查询数据为集合
     2 $data=Users::all();
     3 
     4 //根据[$id]主键查询 查询一条数据
     5 $data=Users::find($id);
     6 
     7 //findOrFail() 根据主键查询 如果没有查到 报错
     8 $data=Users::findOrFail($id);
     9 
    10 //get() 查询所有数据
    11 $data=Users::get();
    12 
    13 //first() 查询第一条
    14 $data=Users::where('id','>','1')->orderBy('age','desc')->first();
    15 
    16 //chunk() 每次查询指定[$num]条数 
    17 Users::chunk($num,function($data){
    18     print_r($data);
    19 });
    20 
    21 //聚合函数
    22 //count() 统计记录条数
    23 $num = Users::count();
    24 
    25 //max() 查询最大值   min() 查询最小值
    26 $max=Users::where('id','>',1)->max('age');

    ORM 增

     1 //save() 单增
     2 $data = new Users();
     3 $data->name = 'admin_a';
     4 $data->age = 100;
     5 $data->save();
     6 
     7 //create() 多增
     8 $ret=Users::create([
     9     'name'=>'admin_b',
    10     'age'=>200
    11 ]);
    12 
    13 //firstOrCreate()以属性查询数据 如果没有 新建数据
    14 $ret=Users::firstOrCreate([
    15     'name'=>'admin_c',
    16     'age'=>300
    17 ]);
    18 
    19 //firstOrNew() 以属性查询数据 如果没有 新建实例 如果想保存调用save()
    20 $ret=Users::firstOrNew([
    21     'name'=>'admin_d',
    22     'age'=>400
    23 ]);
    24 $ret->save();

    ORM 改

     1 //获取主键id,模型修改数据
     2 $data=Users::find($id);
     3 $data->name ='admin_e';
     4 $data->age =66;
     5 $data->save();
     6 
     7 //批量修改
     8 $ret=Users::where('id','>',2)->update(
     9     ['age'=>33]
    10 );

    ORM 删

     1 //获取主键id,模型删除单条
     2 $data=Users::find($id);
     3 $data->delete();
     4 
     5 //通过主键删除多条
     6 $ret=Users::destroy(1,2,3);
     7 $ret=Users::destroy([4,5,6]);
     8 
     9 //删除指定条件
    10 $ret=Users::where('id','>',2)->delete();

     laravel5.6 操作数据查询构建器链接: 请点击跳转

  • 相关阅读:
    Windows 科研软件推荐
    有关Python 包 (package) 的基本知识
    《Using Python to Access Web Data》Week4 Programs that Surf the Web 课堂笔记
    Coursera助学金申请模板
    《Using Databases with Python》 Week2 Basic Structured Query Language 课堂笔记
    Jupyter 解决单个变量输出问题
    解决 pandas 中打印 DataFrame 行列显示不全的问题
    《Using Python to Access Web Data》 Week3 Networks and Sockets 课堂笔记
    缓存击穿及解决方案
    jvm垃圾收集器
  • 原文地址:https://www.cnblogs.com/cxx8181602/p/9698929.html
Copyright © 2020-2023  润新知