laravel5.6 操作数据 Eloquent ORM
建立Users模型
<?php
namespace App\Model\Eloquent\Admin; use Illuminate\Database\Eloquent\Model; class Users extends Model
{
//指定表名
protected $table="users"; //指定id
protected $primaryKey="id"; //指定允许批量的字段
protected $fillable=['name','age']; //指定不允许批量赋值的字段
protected $guarded=[]; //连接多数据库配置 默认使用'mysql'
protected $connection = 'mysql'; //自动维护时间戳 默认是'true'
public $timestamps=true; //返回当前时间的时间戳,进入数据库,输出时,可以输出格式化好的时间
protected function getDateFormat()
{
return time();
} //设置之后,返回的就是数据表中的时间戳
protected function asDateTime($value)
{
return $value;
}
}
引用Users模型
use App\Model\Eloquent\Admin\Users;
ORM 查
//all() 查询所有数据 查询数据为集合
$data=Users::all(); //根据[$id]主键查询 查询一条数据
$data=Users::find($id); //findOrFail() 根据主键查询 如果没有查到 报错
$data=Users::findOrFail($id); //get() 查询所有数据
$data=Users::get(); //first() 查询第一条
$data=Users::where('id','>','1')->orderBy('age','desc')->first(); //chunk() 每次查询指定[$num]条数
Users::chunk($num,function($data){
print_r($data);
}); //聚合函数
//count() 统计记录条数
$num = Users::count(); //max() 查询最大值 min() 查询最小值
$max=Users::where('id','>',1)->max('age');
ORM 增
//save() 单增
$data = new Users();
$data->name = 'admin_a';
$data->age = 100;
$data->save(); //create() 多增
$ret=Users::create([
'name'=>'admin_b',
'age'=>200
]); //firstOrCreate()以属性查询数据 如果没有 新建数据
$ret=Users::firstOrCreate([
'name'=>'admin_c',
'age'=>300
]); //firstOrNew() 以属性查询数据 如果没有 新建实例 如果想保存调用save()
$ret=Users::firstOrNew([
'name'=>'admin_d',
'age'=>400
]);
$ret->save();
ORM 改
//获取主键id,模型修改数据
$data=Users::find($id);
$data->name ='admin_e';
$data->age =66;
$data->save(); //批量修改
$ret=Users::where('id','>',2)->update(
['age'=>33]
);
ORM 删
//获取主键id,模型删除单条
$data=Users::find($id);
$data->delete(); //通过主键删除多条
$ret=Users::destroy(1,2,3);
$ret=Users::destroy([4,5,6]); //删除指定条件
$ret=Users::where('id','>',2)->delete();
laravel5.6 操作数据查询构建器链接: 请点击跳转
laravel5.6 操作数据 Eloquent ORM的更多相关文章
- laravel5.5源码笔记(八、Eloquent ORM)
上一篇写到Eloquent ORM的基类Builder类,这次就来看一下这些方便的ORM方法是如何转换成sql语句运行的. 首先还是进入\vendor\laravel\framework\src\Il ...
- laravel5.5种的Eloquent ORM的使用:
控制器方法: //Eloquent ORM的使用: public function orm1() { //all() /*$students=Student::all(); dd($students) ...
- Laravel5.2中Eloquent与DB类的区别是什么?
要了解这些先看看关于数据库组件的那些事儿(就是 Eloquent ORM) 数据库组件大概分了三层: 数据库连接层 查询构造层 应用层 来看一下每一层有哪些东西,分别对应文档的哪一部分: 数据库连接层 ...
- laravel5.6操作数据curd写法(查询构建器)
laravel5.6 数据库操作-查询构建器 <?php //laravel5.6 语法 demo示例 namespace App\Http\Controllers;//命名该控制App空间下名 ...
- Eloquent ORM笔记
基本操作 新增 $user = new User; $user->name = 'John'; $user->save(); $insertedId = $user->id;//从对 ...
- Laravel Eloquent ORM
Eloquent ORM 简介 基本用法 集体赋值 插入.更新.删除 软删除 时间戳 查询范围 关系 查询关系 预先加载 插入相关模型 触发父模型时间戳 与数据透视表工作 集合 访问器和调整器 日期调 ...
- [转]Laravel 4之Eloquent ORM
Laravel 4之Eloquent ORM http://dingjiannan.com/2013/laravel-eloquent/ 定义Eloquent模型 模型通常放在app/models目录 ...
- Eloquent ORM 学习笔记
最近在学习Laravel,觉得ORM功能很强大,我这里只是简单探索了一点,如果有更好的笔记,还请分享. 因为重点在于Eloquent ORM,所以路由设置,控制器就不详细描述了,这里直接进入Model ...
- Eloquent ORM 之关联查询
小伙伴们好,本文是在我的前一篇随笔的基础上完成的,还没有浏览的同学,请移尊驾哦 Eloquent ORM学习笔记. 前一篇文章用到了leftJoin方法,其实Eloquent对于模块之间的关联查询有自 ...
随机推荐
- php-fpm启动不起来,php-fpm无法启动的一种情况
今天碰了一个很奇怪的问题,平时好好的php-fpm修改了一个参数后,突然启动不起来了,试着把参数还原.甚至用备份的配置文件还原都没办法启动php,而且不给任务启动错误的提示,纳闷!!!后来上网找了个资 ...
- SQL复制远程数据库数据到本地-及查询结果少显示一列
网上找了查询结果怎么少显示一列,因为数据很多列,结果不是视图就是嵌套,太麻烦,这里用临时表做 exec sp_addlinkedserver 'ITSV ', ' ', 'SQLOLEDB', '19 ...
- IO流 -字符输入输出流,以及异常处理方法
字符输入流 java.io.Reader: 字符输入流的顶层抽象父类 共性的成员方法: int read() 读取单个字符,并返回. int read(char[] cbuf) 将字符读入数组. ab ...
- Flash存储模块调试
Flash存储模块 Flash存储模块之前SPI一直读deviceID有问题原因如下: 用正点原子的例程是可以的,但是转移到自己的工程项目里就不行!!原因是正点原子没有在SPI初始化里 RCC ...
- Vue+axios+Node+express实现文件上传(用户头像上传)
Vue 页面的代码 <label for='my_file' class="theme-color"> <mu-icon left value="bac ...
- c++知识点总结3
http://akaedu.github.io/book/ week1 引用:相当于变量的别名.下面r和n就相当于同一回事 ; int &r=n; 引用做函数参数: void swap(int ...
- mybatis resultMap之collection聚集两种实现方式
最近做得项目用到了MyBatis处理一对多的映射关系,下面的两个方法中用到了集合的嵌套查询方法,下面仔细学习一下这两种方式 聚集元素用来处理"一对多"的关系.需要指定映射的Java ...
- C#Stopwatch的简单计时 [收藏]
Stopwatch 类 命名空间:System.Diagnostics.Stopwatch 实例化:Stopwatch getTime=new Stopwatch(); 开始计时:getTime.St ...
- unity2017 光照与渲染(二)FAQs
FAQ: 场景里的物体没有影子? 1)灯光是否开了影子 2)QualitySettings 中 shadows 的设置 3) 模型MeshRenderer 的 ReciveShadows 和 Cast ...
- Taro -- 定义全局变量
Taro定义全局变量 方法1:在taro中 getApp()只能取到一开始定义的值,并不能取到改变后的值 // app.js文件中 class App extends Component { cons ...