一、什么是查询构造器?
①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);
大家学会了嘛(〃'▽'〃)