Blogger Information
Blog 36
fans 2
comment 0
visits 23765
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
2019-12-31:laravel基础-数据库原生+查询构造器操作
Rambo-Yang
Original
801 people have browsed it
  • post 提交表单的时候必须加token,在视图表单里面加一个@csrf,提交的时候把token一起提交,不然会出现419错误。
  • 接收gethe postd的值:先引用类:use Illuminate\Support\Facades\Input;再用Input::get('name')接收
  • 视图不能用命令行创建,只能手动创建,模型创建命令:php artisan make:model [目录名/]模型类名,控制器创建命令:php artisan make:controller [目录名/]控制器类名.
  • 对象转换为数组 ->toArray()

原生的sql操作

1、原生的sql语句查询:DB::select

  1. # 运行原生的sql语句查询,? 号是占位符,表示参数绑定,后面[1] 是绑定数据
  2. $res = DB::select("select * from `shop` where id = ?",[1]);
  3. # 除了使用 ? 表示参数绑定外,也可以使用命名绑定来执行一个查询
  4. $res = DB::select("select * from `shop` where id = :id",['id'=>1]);

2、更新:DB::update

  1. $res = DB::update('update `shop` set cid = 2 where id = ?',[6]);
  2. #成功返回受影响的记录条数,失败:返回0

3、新增:DB::insert

  1. $res = DB::insert('insert into `shop_cate` (`id`,`title`) value (?,?)',[null,'海外车讯']);
  2. #成功返回1

4、删除:DB::delete

  1. $res = DB::delete('delete from `shop_cate` where id =14');
  2. #成功返回1,失败返回0

查询构造器 table()

1,查询:where方法

  1. #查询所有内容 get() 是获取所有条数
  2. $res = DB::table('shop')->where('cid','=','2')->get()->toArray();

  1. #查询指定字段 select() 查询指定字段
  2. $res = DB::table('shop')->select('id','title','cid')->where('cid','=','2')->get()->toArray();

2,whereIn方法

  1. #whereIn() 和 in 或 or 实现的功能一样,但是比or性能更好,or对数据库来说就是灾难,尽量少用
  2. $res = DB::table('shop')->select('id','title','cid')->whereIn('id',[1,3,5])->get()->toArray();
  3. # id是字段,值用数组的形式传进去

3,update方法

  1. # where() 要放在update()方法的前面,update() 方法里面传的是数组
  2. $res = DB::table('shop_cate')->where('id', 7)->update(['title'=>'海外车讯']);
  3. # 成功返回受影响的记录条数,失败返回0

4,delete方法

  1. # where()条件要放在delete()方法前面,delete()里面不需要传值
  2. $res = DB::table('shop_cate')->where('id',13)->delete();
  3. # 成功返回受影响的记录条数,失败返回0

5,insert方法

  1. #新增一条记录
  2. $res = DB::table('shop_cate')->insert(
  3. ['id'=>'1','title'=>'新能源汽车']
  4. );
  5. #新增多条记录,每条记录以数组的形式放到一个数组里面
  6. $res = DB::table('shop_cate')->insert([
  7. ['id'=>'3','title'=>'合资汽车'],
  8. ['id'=>'4','title'=>'新车谍照']
  9. ]
  10. );
  11. # 成功返回1

6,insertGetId方法,插入记录并返回 ID 值

  1. $res = DB::table('shop_cate')->insertGetId(['title'=>'海外车讯']);
  2. # insertGetId()只能新增一条记录,返回的是该条记录的ID主键

总结:

  • whereIn(‘id’, [1,3])表示指定查询 id=1, id=3 的记录
  • whereBetween(‘id’, [1,5])表示指定查询 1-5 的记录(包含1,5)
  • insert()插入成功返回 1,失败返回 0。
  • update()更新成功返回受影响的记录条数。
  • delete()删除成功返回成功返回受影响的记录条数,失败返回0
  • insertGetId()只能新增一条记录,返回的是该条记录的ID主键
Correcting teacher:天蓬老师天蓬老师

Correction status:qualified

Teacher's comments:很认真, 继续努力
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post