Laravel入门教程(四)- 数据库操作之
来源:互联网 发布:php登陆后跳转页面 编辑:程序博客网 时间:2024/06/06 00:42
1. 查询构造器(query builder)
2. 新建记录
<?phpnamespace App\Http\Controllers;use Illuminate\Support\Facades\DB;class StudentController extends Controller{ public function query1(){ // 新增记录 $bool = DB::table('student')->insert([ 'name' => 'Lisa', 'age' => 18 ]); var_dump($bool); // 新增记录获取自动增加的id $id = DB::table('student')->insertGetId([ 'name' => 'Lucy', 'age' => 22 ]); var_dump($id); // 一次插入多条数据 $bool = DB::table('student')->insert([ ['name' => 'Tommy', 'age' => 23], ['name' => 'Peggy', 'age' => 21] ]); var_dump($bool); }}
3. 更新数据
<?phpnamespace App\Http\Controllers;use Illuminate\Support\Facades\DB;class StudentController extends Controller{ public function query2(){ // 基本更新 $num = DB::table('student') ->where('id', 1006) ->update(['age' => 28]); var_dump($num); // 更新自增1 $num = DB::table('student') ->increment('age'); // 更新自减1 $num = DB::table('student') ->decrement('age'); // 更新自增10 $num = DB::table('student') ->increment('age', 10); // 更新自减10 $num = DB::table('student') ->decrement('age', 10); // 指定id $num = DB::table('student') ->where('id', 1006) ->decrement('age', 5, ['name' => 'Jane']); }}
4. 删除数据
两种方式:
- delete
- truncate
truncate
操作相当危险,会清空所有的数据!!!
<?phpnamespace App\Http\Controllers;use Illuminate\Support\Facades\DB;class StudentController extends Controller{ // 删除 public function query3() { // 简单删除 $num = DB::table('student') ->where('id', 1006) ->delete(); var_dump($num); // 简单删除带 >, <或>=, <= $num = DB::table('student') ->where('id', '>=', 1005) ->delete(); var_dump($num); // truncate table,不返回任何值 // DB::table('student')->truncate(); }}
5. 查询数据
- get():获取全部
- first():获取第一个
- where():条件,如果是用原生的,用whereRaw()
- pluck(): 获取指定字段
- lists():获取指定字段,并返回数组,且可以设置数组下标
- select():选择要返回的字段
- chunk():不全部返回,每次返回指定数量的记录
调试利器:Laravel的dd()函数
<?phpnamespace App\Http\Controllers;use Illuminate\Support\Facades\DB;class StudentController extends Controller{ // 查询 public function query4() { // get()获取所有 $rs = DB::table('student')->get(); dd($rs); // first()获取第一条 $rs = DB::table('student') ->first(); dd($rs); // 排序 $rs = DB::table('student') ->orderBy('id', 'DESC') ->first(); dd($rs); // where() $rs = DB::table('student') ->where('id', '>=', 1002) ->get(); dd($rs); // where()多个条件 $rs = DB::table('student') ->whereRaw('id >= ? AND age > ?', [1001, 18]) ->get(); dd($rs); // pluck() 返回结果集中指定的字段 $names = DB::table('student') ->pluck('name'); dd($names); // lists() 返回结果集中指定的字段到数组,可以指定下标 $names = DB::table('student') ->lists('name', 'id'); dd($names); // select() 返回指定字段 $names = DB::table('student') ->select('id', 'name') ->get(); dd($names); // chunk()一次只查部分数据 DB::table('student')->chunk(2, function($students){ var_dump($students); return false; }); }}
6. 聚合函数
- count
- max
- min
- avg
- sum
<?phpnamespace App\Http\Controllers;use Illuminate\Support\Facades\DB;class StudentController extends Controller{ // 使用聚合函数 public function query5() { // count $qty = DB::table('student')->count(); dd($qty); // max $qty = DB::table('student')->max('age'); dd($qty); // min $qty = DB::table('student')->min('age'); dd($qty); // avg $qty = DB::table('student')->avg('age'); dd($qty); // sum $qty = DB::table('student')->sum('age'); dd($qty); }}
阅读全文
0 0
- Laravel入门教程(四)- 数据库操作之
- Laravel入门教程(五)- 数据库操作
- Laravel入门教程(三)- 数据库操作 DB facade
- Laravel学习笔记(四)---操作数据库--原生SQL语句
- ArangoDB入门教程(四)java操作ArangoDB数据库
- laravel框架学习之数据库相关操作(三)
- laravel学习笔记(3)— 数据库操作之
- laravel学习笔记(4)— 数据库操作之
- Laravel数据库操作之-DB facade
- Laravel数据库操作之-Eloquent ORM
- Laravel入门教程(一)
- Laravel 5 系列入门教程(四)【最适合中国人的 Laravel 教程】【完结】
- 2016 版 Laravel 系列入门教程(四)【最适合中国人的 Laravel 教程】
- Laravel数据库操作之-增删改查CURD操作
- laravel 数据库操作
- laravel--4 数据库操作
- Laravel操作数据库
- Laravel数据库操作大全
- 关于qq表情的存储
- String"=="和equals
- 什么是API
- Ijkplayer简单使用
- ubuntu 查看显卡驱动是否安装
- Laravel入门教程(四)- 数据库操作之
- 人工智能第三次黄金时代,藏在全球数亿摄像头里?
- android 多线程下载+GreenDao保存状态+ijkplayer播放缓存后的视频
- IDEA配置优化
- java jedis主从切换
- c++中成员变量初始化问题
- mybatis框架简单案例
- tomcat部署
- retrofit+Rxjava+Greendao+断点续传+Ijkplayer视频播放