连接数据库
主要操作文件:config/database.php .env
config/database.php
.env
DB facade 实现CURD (原始查找)
//查询
$student=DB::select('select * from student');
dd($student);
//新增
$rs=DB::insert('insert into student(name,age) value(?,?)',['qwe',12]);
var_dump($rs);//返回布尔值
//修改
$rs=DB::update('update student set age=? where name=?',[20,'qwe']);
var_dump($rs);//返回操作条数
//删除
$rs=DB::delet('delete from student where id=?',[1]);
var_dump($rs);//返回操作条数
使用查询构造器操作数据库
查询构造器 插入
//插入
//单条插入
$bool=DB::table('student')->insert([
'name'=>'asd',
'age'=>18
]);
var_dump($bool);//返回布尔值
//插入多条数据
$bool=DB::table('student')->insert([
['namw'=>'zxc','age'=>12],
['namw'=>'zxc2','age'=>123]
]);
var_dump($bool);//返回布尔值
//插入时返回自增ID insertGetId
$id=DB::table('student')->insertGetId([
'name'=>'asd2',
'age'=>12
]);
var_dump($id);//返回自增id
查询构造器 更新
//更新
//where('id','>',3)
//更新指定数据
$num=DB::table('student')->where('age',12)->update([
'age'=>34
]);
var_dump($num);//返回影响条数
// 自增
$num=DB::table('student')->where('id',12)->increment('age');//默认自增1
$num=DB::table('student')->increment('age',3);//自增3
var_dump($num);//返回影响条数
//自减
$num=DB::table('student')->where('id','>',3)->decrement('age',3);//自减3
var_dump($num);//返回影响条数
//自增自减的同时更新别的字段
$num=DB::table('student')->where('id','>',3)->decrement('age',3,['name'=>'cvv']);//自减3 name 改为cvv
var_dump($num);//返回影响条数
查询构造器 删除
//删除
$num=DB::table('student')->where('id',1)->delete();
var_dump($num);
//清空整个表 不建议使用 不返回任何数据
DB::table('student')->truncate();//清空整个表 不建议使用 不返回任何数据
查询构造器 查询
//查询
//get() 获取所有数据
$students=DB::table('student')->get();//获取所有数据
dd($students);
//first() 获取第一条数据
$student=DB::table('student')->orderBy('id','desc')->first();//获取结果集第一条数据
dd($student);
//where() 条件查询
$students=DB::table('student')->where('id','>',3)->get();//获取所有数据
dd($students);
//whereRaw() 多条件
$students=DB::table('student')
->whereRow('id>=? and age >?',[2,32])
->get();
dd($students);
//pluck() 返回结果集中的某个字段
$students=DB::table('student')->pluck('name');//获取所有数据
dd($students);
//lists() 和pluck() 效果一样 可指定某个字段作为键值 返回结果集中的某个字段
$students=DB::table('student')->lists('name','id');//获取所有数据
dd($students);
//select() 指定查找某些字段
$students=DB::table('student')->select('name','id','age')->get();
dd($students);
//chunk() 分段查询 每次查询指定数目 直到全部查完
echo '<pre>';
DB::table('student')->chunk(2,function($students){
var_dump($students);
return false;//返回false 停止查询
});
查询构造器 聚合函数
//聚合函数
//count() 统计表的记录数 返回num
$count=DB::table('student')->count();
var_dump($count);
//max() 最大值
$max=DB::table('student')->max('age');
var_dump($max);
//min() 最小值
$min=DB::table('student')->min('age');
var_dump($min);
//avg() 平均数
$avg=DB::table('student')->avg('age');
var_dump($avg);
//sum() 总和
$sum=DB::table('student')->sum();
var_dump($sum);