<?php /** * Created by PhpStorm. * User: Administrator * Date: 2018/1/22 0022 * Time: 11:13 */ namespace app\index\controller; use think\Db;//导入操作数据库类 /* *查询构造器: * 准备工作:app_debug=>'true';app_trace=>'true'; * 系统学习数据库的增删改查:CURD */ class Demo5 { // 1.单条查询 public function find(){ /* * Db类数据库操作的入口类 * 功能:静态调用think\Db\Query.php类中的查询方法实现基本操作 * table():选择数据表 * where():设置查询条件 表达式,数组 * 1.单条使用表达式 * 2.多条使用数组 * find()返回符合条件的第一条记录,没有的话返回Null */ $res =Db::table('student') // ->field('id,name,email') ->field(['id'=>'编号','name'=>'姓名','email'=>'邮箱']) ->where('id','=',5) // ->find(5);//如果是主键查询,可省略where() ->find(); dump(is_null($res)? '没有找到这条数据': $res); } // 2.多条查询 public function select(){ //select()返回的是一个二维数组,没有数据返回是一个空数据 $res=Db::table('student') ->field('id,name,email,course,grade') ->where([ ['course','=','php'], ['grade','>=',80] ])->select(); if(is_null($res)){ return '没有找到数据'; }else{ foreach ($res as $row){ dump($row); } } } //插入操作 public function insert(){ // 1.准备要插入的数据 $data =[ 'name'=>'金毛狮王3', 'email'=>'jm@qq.com', 'course'=>'java','grade'=>99, 'create_time'=>time(), 'update_time'=>time(), ]; // return Db::table('student')->insert($data); // return Db::table('student')->data($data)->insert(); // 插入的同时返回新增主键ID // insertGetId()同时执行二步:第一步插入,第二步返回主键id return Db::table('student')->insertGetId($data); } // 4.添加多条 public function insertAll(){ $data =[ ['name'=>'peng','email'=>'p@qq.com'], ['name'=>'shou','email'=>'s@qq.com'], ['name'=>'xing','email'=>'x@qq.com'] ]; return Db::table('student')->insertAll($data); } // 5.更新操作 public function update(){ //update()必须要有更新条件 // return Db::table('student') // ->where('id',14) // ->update(['name'=>'西门庆']); // 如果更新条件是主键的话,可以直接把主键写到更新数组中 return Db::table('student') ->update(['name'=>'金莲','id'=>15]); } // 6.删除操作 public function delete(){ return Db::table('student') ->where('id',17) ->delete(); } //原生查询 public function query(){ $sql = "SELECT `name`,`email`FROM `student` WHERE `id` IN (4,5,6)"; dump(Db::query($sql)); } // 原生写操作:更新,删除,添加 public function execute(){ // return Db::execute("UPDATE `student` SET `name`='武松' WHERE `id`=13"); // return Db::execute("INSERT `student` SET `name`='宋江'"); // return Db::execute("DELETE FROM `student` WHERE `id`=12"); } }