一、什么是查询构造器?

  ①Laravel 查询构造器(query Builder)提供方便,流畅的接口,用来建立及执行数据库查找语法

  ②使用PDO参数绑定,以保护应用程序免于SQL注入因此传入的参数不需额外转义特殊字符

  ③基本可以满足所有的数据库操作,而且在所有支持的数据库系统上都可以执行

  *这里所有的例子student表为例

  

二、C -- Create(新建)

  如何使用查询构造器添加数据:

  添加数据的结果返回的是bool类型

  $bool = DB::table('student')->insert(['name' => '肖潇','age' => 17]);

  var_dump($bool);  //输出结果

  //insertGetId -- 新增一条数据并获取主键值,返回的是主键值

  $id = DB::table('student')->insertGetId(['name' => '未央','age' => 20]);

  var_dump($id);  //输出结果

  //批量添加数据

  $bool = DB::table('student')->insert([

    ['name' => '上官娜','age' => 19],

    ['name' => '楚乔','age' => 20],

    ['name' => '慕容晓晓','age' => 21]

  ]);

  var_dump($bool);  //输出结果

三、U -- Update(更新)

  如何使用查询构造器更新数据:

  更新返回的结果是受影响行数

  $num = DB::table('student')->where('id',1001)->update(['age' => 22]);

  var_dump($num);

四、R -- Retrieve(读取)

  如何使用查询构造器读取数据:

  ①$students = DB::table('student')->get();  //查询全部数据

  ②$student = DB::table('student')->first();  //返回结果集的第一条数据

  ③$students = DB::table('student')->whereRaw('id > ? and age >= ?',[1001,20])->get();  //多条件查询

  ④$names = DB::table('student')->pluck('name');  //获取指定字段的所有值

  ⑤$names = DB::table('student')->lists('name','id');  //可以指定某个值作为下标  这里name的下标就是id

  ⑥$students = DB::table('student')->select('id','name','age')->get();  //指定查询的字段

  ⑦echo "<pre>";  //每次查询n条记录

   DB::table('student')->chunk(n ,function ($students)

    {

     var_dump($students);

    }

   );

五、D -- Delete(删除)

  如何使用查询构造器删除数据:

  返回的是受影响行数

  $num = DB::table('student')->where('id',1003)->delete();

  var_dump($num);

六、拓展

  (1)利用查询构造器自增数据

      //自增 默认自增1

      $num = DB::table('student')->increment('age');

      //可指定自增的数量   n--自增数量

      $num = DB::table('student')->increment('age',n);

      var_dump($num);

  (2)利用查询构造器自减数据

      //自减 默认自减1

      $num = DB::table('student')->decrement('age');

      //指定自减的数量   n--自减数量

      $num = DB::table('student')->decrement('age',n);

      var_dump($num);

大家学会了嘛(〃'▽'〃)

Laravel框架使用查询构造器实现CURD的更多相关文章

  1. [Laravel框架学习二]:Laravel的CURD和查询构造器的CURD,以及聚合函数

    public function index() { //return Member::getMember();//这是调用模型的方法 return view('lpc',[ 'age'=>18, ...

  2. laravel中通过查询构造器,实现数据的curd

    //查询构造器: public function query1(){ //利用查询构造器,插入数据: /*$num=DB::table('student')->insert( ['name'=& ...

  3. Laravel框架简单的用户管理[CURD]操作

    一个基于laravel和bootstrap的简单的用户管理,适合刚入门的我们,在做的过程中可以加深自己对laravel基础理解,里面存在一些问题,还未修改,比如css和js的引入,表单提交地址等不规范 ...

  4. Laravel中的查询构造器

    public function query(){ //新增数据 //$bool = DB::table('wd_user')->insert(['username'=>'jack']); ...

  5. Laravel框架数据库CURD操作、连贯操作使用方法

    Laravel框架数据库CURD操作.连贯如何来操作了这个操作性是非常的方便简单了我们在这里来为各位介绍一篇相关的教程,具体的细节步骤如下文介绍.   Laravel是一套简洁.优雅的PHP Web开 ...

  6. Laravel框架数据库CURD操作、连贯操作

    这篇文章主要介绍了Laravel框架数据库CURD操作.连贯操作.链式操作总结,本文包含大量数据库操作常用方法,需要的朋友可以参考下 一.Selects 检索表中的所有行 $users = DB::t ...

  7. Laravel框架数据库CURD操作、连贯操作总结

    这篇文章主要介绍了Laravel框架数据库CURD操作.连贯操作.链式操作总结,本文包含大量数据库操作常用方法,需要的朋友可以参考下 一.Selects 检索表中的所有行 复制代码代码如下: $use ...

  8. Laravel框架中的数据库CURD操作、连贯操作、链式操作的用法

    Laravel是一套简洁.优雅的PHP Web开发框架(PHP Web Framework).它可以让你从面条一样杂乱的代码中解脱出来:它可以帮你构建一个完美的网络APP,而且每行代码都可以简洁.富于 ...

  9. laravel查询构造器中别名的问题

    Laravel框架对数据库的封装是比较完善的,用起来也比较方便.但之前有一个问题一直困扰着我,就是利用laravel作查询时.如果想给表名或是字段名起别名是比较麻烦的事.但翻阅它的文档不难发现,它提供 ...

随机推荐

  1. Java异常的性能分析

    详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt276 在Java中抛异常的性能是非常差的.通常来说,抛一个异常大概会消耗10 ...

  2. 【Alpha】——Seventh Scrum Meeting

    一.今日站立式会议照片 二.每个人的工作 成员 昨天已完成的工作 今天计划完成的工作 李永豪 将项目做成APK 用户界面改善 郑靖涛 协助设计账目一览表板块 用户界面改善 杨海亮 查询功能测试 用户界 ...

  3. 团队作业3-需求改进&原型设计

    选题:实验室报修系统 实验室设备经常会发生这样或那样的故障,靠值班人员登记设备故障现象,维护人员查看故障记录,进行维修,然后登记维修过程与内容,以备日后复查,用这种方式进行设备运营管理,它仅仅起到一个 ...

  4. 201521123056 《Java程序设计》第12周学习总结

    1. 本周学习总结 2. 书面作业 将Student对象(属性:int id, String name,int age,double grade)写入文件student.data.从文件读出显示. 1 ...

  5. java第九次学习总结

    1. 本周学习总结 2.. 书面作业 1.常用异常 题目5-1 1.1 提交结果(出现学号) 1.2 自己以前编写的代码中经常出现什么异常.需要捕获吗(为什么)?应如何避免? 以前编写的代码经常出现异 ...

  6. 201521123110《Java程序与设计》第13周学习总结

    1. 本周学习总结 2. 书面作业 1. 网络基础 1.1 比较ping www.baidu.com与ping cec.jmu.edu.cn,分析返回结果有何不同?为什么会有这样的不同? 时间数据不同 ...

  7. 201521123109 《java程序设计》第11周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多线程相关内容. 2. 书面作业 本次PTA作业题集多线程 1. 互斥访问与同步访问 完成题集4-4(互斥访问)与4-5(同步访问) ...

  8. Java:print、printf、println的区别

    printf主要是继承了C语言的printf的一些特性,可以进行格式化输出 print就是一般的标准输出,但是不换行 println和print基本没什么差别,就是最后会换行 System.out.p ...

  9. cxgrid学习

    delphi cxgrid控件哪个属性是设置不能编辑? cxgrid控件cxgridDBTable的OptionsData可以选择操作 cxGrid1DBTableView1下选择cxGrid1DBT ...

  10. cnblogs第一天

    2017-08-25 21:27:16 今天算是真的下定决心要好好的去经营自己的博客了. flag也就不立了,毕竟,flag这种东西立了就是为了打脸的嘛....... 既然说是经营了,那必然是要认认真 ...