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对于模块之间的关联查询有自 ...
随机推荐
- SpringBoot错误经验
1.在application.properties 添加 debug=true,可以看见项目的执行流程有助于调bug 2.如果错误显示端口号被占用 cmd 步骤1 查看端口号应用情况:netstat ...
- 安卓手机作为中继器-连接Wifi共享该Wifi给PC和手机
工具 routernet.apk
- JAVA总结--多线程
一.概念 1.进程:一个具有一定独立功能的程序,关于某些数据集合,一次运行活动. 两点:1.有自己的空间存储数据:2.一个程序. 进程,是系统 进行 资源分配 和 调度 的基础单位.动态性 ...
- JAVA总结--java基本语法
static :静态的~ static :静态变量.静态方法: 被修饰的成员变量或者方法独立于该类的任何对象,只要该类被加载,被修饰的成员变量或者方法就存在并可以使用. 用public修饰的stat ...
- webpack4 es6转换
在webpack里用es6语法, ie浏览器不识别,为了让浏览器识别,需要用到bebal转换; bebal,英文是通天塔 的意思, 我们常说的巴比伦也是这个词;我估计是当初设计者是想用它作为一个沟通e ...
- git的基本使用方法
git的基本使用方法:https://blog.csdn.net/qq_33316091/article/details/82414389
- 【接口工具】mac环境下使用Charles抓包Https请求
Charles支持针对Https包解析.具体安装导航请参考“[接口工具]接口抓包工具之Charles” 操作流程 电脑安装证书: Help-SSL Proxying-Install Charles R ...
- django信号相关
Django中提供了“信号调度”,用于在框架执行操作时解耦.通俗来讲,就是一些动作发生的时候,信号允许特定的发送者去提醒一些接受者. 1.Django内置信号 Model signals pre_in ...
- Linux--shell三剑客<sed>--07
1.sed(stream editor): 作为行编辑器,对文本进行编辑(以行为单位) 默认显示输出所有文件内容 注意:sed编辑文件,却不改变原文件 2.sed的工作原理: 指定一个文本文件,依次读 ...
- 实验查看PHP本地的Session信息
通过Nginx调度器负载后端两台Web服务器,实现以下目标: - 部署Nginx为前台调度服务器 - 调度算法设置为轮询 - 后端为两台LNMP服务器 - 部署测试页面,查看PHP本地的Session ...