一.DB门面
1.insert
DB::insert('insert into table(`name`) value(?)', ['test']); 2.update
DB::update('update into table set name=? where id=?', ['test', 10]); 3.delete
DB::delete('delete from tb where id=?', [1]); 4.select
DB:select('select * from tb'); 二.查询构建器(使用查询构建器不会触发模型事件)
1.insert
DB::table('tb')->insert(['name' => 'test']); 2.update
DB::table('tb')->where('id', 1)->update(['name' => 'test']); 3.delete
DB::table('tb')->where('id', 1)->delete(); 4.select
# 多条
DB::table('tb')->where('cat', 1)->orWhere(function($query){
return $query->where('vote', '>', 1);
})->orderBy('id', 'DESC')->select('name')->skip(5)->take(10)->get(); #一条
DB::table('tb')->where('cat', 1)->first(); #一列
DB::table('tb')->where('cat', 1)->value('col');
DB::table('tb')->where('cat', 1)->pluck('col'); 三.Eloquent ORM(本身就是查询构建器)
1.insert(也可以使用insert方法插入一个数组到数据库,但不会触发事件) $model = new TbModel;
$model->name = 'test';
$model->save(); 使用create,但需要模型限定fillable或guarded
TbModel::create(['name' => 'test']); create和save的区别是
a.create的参数接受的一个字段数组,save也可以接受一个数组,但是只是用来指定timestamps的值
b.create返回的是一个model,save只返回true或false 2.update
$model = TbModel::first(1);
$model->name = 'test';
$model->save(); 带where并且只更新指定字段,和查询构建器一样
$model = TbModel::first(1);
$model->where('time', today())->update(['delayed'=>1]); save无法和where共用,它是根据主键来保存的;保存受影响的字段; 3.delete
TbModel::first(1)->delete();
TbModel::destory(1);
Flight::where('id', 1)->delete(); 4.select
#多条
TbModel::all();//不能带where
TbModel::where('cat', 1)->get(); //可以带where #单条
TbModel::find(1); // 利用主键取回
如果查询条件带where,而且不是主键,则使用first
TbModel::where('time', today())->first();
  

  

DB门面,查询构建器,Eloquent ORM三者的CURD的更多相关文章

  1. Laravel 数据库实例教程 —— 使用查询构建器对数据库进行增删改查

    原文地址:https://blog.csdn.net/lmy_love_/article/details/72832259 获取查询构建器很简单,还是要依赖DB门面,我们使用DB门面的table方法, ...

  2. laravel5.6操作数据curd写法(查询构建器)

    laravel5.6 数据库操作-查询构建器 <?php //laravel5.6 语法 demo示例 namespace App\Http\Controllers;//命名该控制App空间下名 ...

  3. [转]Laravel 数据库实例教程 —— 使用查询构建器实现对数据库的高级查询

    本文转自:https://laravelacademy.org/post/920.html 上一节我们简单介绍了如何使用查询构建器对数据库进行基本的增删改查操作,这一节我们来探讨如何使用查询构建器实现 ...

  4. Yii2 查询构建器 QueryBuilder

    查询构造器 QueryBuilder 1.什么是查询构建器 查询构建器也是建立在 DAO 基础之上,可让你创建程序化的.DBMS 无关的 sql 语句,并且这样创建的 sql 语句比原生的 sql 语 ...

  5. Laravel5.1 数据库-查询构建器

    今儿个咱说说查询构建器.它比运行原生SQL要简单些,它的操作面儿也是比较广泛的. 1 查询结果 先来看看它的语法: public function getSelect() { $result = DB ...

  6. laravel 查询构建器(连贯操作)

    注:laravel 查询返回行的都是 php 的 stdClass 对象实例,不是数组!!!! 1)查询多行(get) DB::table('table_name')->get(); 带偏移和限 ...

  7. yii2 查询构建器

    Query Builder $rows = (new \yii\db\Query()) ->select(['dyn_id', 'dyn_name']) ->from('zs_dynast ...

  8. laravel增删改查(查询构建器)

    1.增 $data = [ 'username' => 'xiaohong', 'nickname' => '小红红', 'email' => '12356788@qq.com', ...

  9. 定义查询构建器IFeatureLayerDefinition

    在宗地出图,需要实现,只显示某一户人的地块.在ArcMap里,有个定义查询,可只显示过滤后的要素. 在代码中,也比较好实现,使用IFeatureLayerDefinition接口即可. IFeatur ...

随机推荐

  1. linux低权限执行高权限

    1.关于sudo不需要输密码,低权限执行高权限,在root下的命令visudo放开%wheel ALL:保存退出, 执行gpasswd -a yourusername wheel 2.脚本命令下的,权 ...

  2. log4net日志分割,按大小分割

    最近写了一个socket通信的手表在线服务端,在日志方面,记录下Log4net日志分割 1.引入log4net.dll 2.web.config添加configsection handler 映射: ...

  3. eclipse keys

    Navigate Open Declaration F3 Editing Script Source Source Mark Occurrences Alt+Shift+O Editing PHP s ...

  4. python3使用urllib获取set-cookies

    #!/usr/bin/env python # encoding: utf-8 import urllib.request from collections import defaultdict re ...

  5. ES6 - Babel编译环境搭建

    都看到这里了,我就不写什么node环境安装之类的了. 直接从新建项目文件夹后开始吧! 安装依赖: 命令行cd到项目文件夹之后,执行以下命令:(mac记得前边加sudo) npm init –y  // ...

  6. Mac下jdk多版本管理

    网上试了.bash_profile中增加路径设置别名的方法,但是始终无法切换,只能使用jenv了. 1. 下载 jenv(来自官网) git clone https://github.com/gcui ...

  7. 一个boost底下的线程池

    Boost的thread库中目前并没有提供线程池,我在sorceforge上找了一个用boost编写的线程池.该线程池和boost结合的比较好,并且提供了多种任务执行策略,使用也非常简单. 下载地址: ...

  8. centos编译安装vim并支持lua

    系统环境:centos6.5 x86 (basic server) 1.安装编译环境. # yum groupinstall "Development Tools" 2.安装vim ...

  9. C#中一些关键字和罕见类

    1.@ 在处理字符串时,那些个字符串转义字符我们可以使用这个,那@就是为解决这个而诞生的,直接让字符串原样输出有木有?什么sql字符串了,还有路径啥了的,统统搞定 string sql = @&quo ...

  10. Laravel使用Eloquent ORM操作数据库

    1.定义模型 <?php namespace App; use Illuminate\Database\Eloquent\Model; class Flight extends Model{ p ...