Laravel 操作数据库(原始查询 查询构造器)

Laravel 操作数据库(原始查询 查询构造器)_第1张图片
图片.png

连接数据库
主要操作文件:config/database.php .env

config/database.php

Laravel 操作数据库(原始查询 查询构造器)_第2张图片
图片.png

.env

Laravel 操作数据库(原始查询 查询构造器)_第3张图片
图片.png

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 '
';
        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);

你可能感兴趣的:(Laravel 操作数据库(原始查询 查询构造器))