Correction status:qualified
Teacher's comments:
<?php /** * Created by PhpStorm. * User: luodingquan * Date: 2018/5/24 * Time: 上午9:06 */ //申明命名空间 namespace app\index\controller; //引入数据库操作类 use think\Db; //创建Demo类 文件名称和类名称必须一致,第一个字母大写(规范) class Demo { /** tp中常用的几种数据库操作方法 table()方法指定要查询的数据表名称 * name()方法指定要查询的表明可以可以省略数据表前缀 * find()查询单条数据 查询到所有符合条件的数据的第一个数据 * where()指定条件 参数是 (字段,表达式,条件) * field()指定字段 该方式传入的方式可以是字符串 数组 * order() 指定条件排序方式 默认是从小到大 ASC 从大到小是 DESC 参数('field','desc') * limit() 指定返回的数据条数 参数传入的是 int * select() 最终方法 返回的是查询的多条数据 不建议传入参数 * insert()插入单条数据 参数是字段组成的一维数组; * getLastInsID()返回最后插入的数据id 仅仅适用于单条查询 * insertGetId() 执行插入数据并返回最后受影响的id * inserAll()插入多条数据 参数是字段组成的二维数组 * update()危险操作 ,不允许无条件更新数据通常和where()配合使用 * date()该方法用于储存数据 参数是数组 * raw()引用原始字段的值 * delete()危险操作 不允许无条件删除 */ //单条查询 public function find() { // 1、单条数据查询 find()方法 最终方法方法体内不建议传入参数 //返回的参数是一个数组 // $res = Db::table('staff') // ->find(18); // 2、通常在查询记录的时候会指定条件where()方法 传入的参数可以是字符串 如果表达式是=(等号)可以省略 // $res = Db::table('staff') // ->where('staff_id','=',16) // ->find(); // 3、指定字段查询 field()方法 传入的参数可以是数组或者字符串 $res = Db::table('staff') ->field(['name','sex','age']) //where()方法中的表达式默认是 = (等号) ->where('staff_id','=',16) //返回查询所有结果的第一条数据 ->find(); dump($res) ; } //多条查询 public function select() { $res = Db::table('staff') ->field(['name','age','sex']) ->where('salary','>=',5000) //常用的排序方式 order by 默认asc ->order('salary','DESC') //指定返回的记录条数 ->limit(5) //执行查询最终方法 不建议传入参数 ->select(); dump($res); } //数据插入 public function insert() { // 1、单条插入 // $data = [ // 'name'=>'赵倩', // 'sex'=>1, // 'age'=>19, // 'salary'=>19292 // ]; // $num = Db::table('staff') // ->insert($data); // $id = Db::getLastInsID(); // if ($num >= 1){ // return '插入'.$num.'条数据成功,插入的最后一条数据是'.$id; // }else{ // return false; // } // 1、多条数据查询 $data = [ ['name'=>'李斯', 'sex'=>0, 'age'=>45, 'salary'=>19292], ['name'=>'项少龙', 'sex'=>0, 'age'=>35, 'salary'=>8000], ['name'=>'乌廷芳', 'sex'=>1, 'age'=>28, 'salary'=>6827], ]; $num = Db::table('staff') ->insertAll($data); if ($num >= 1){ return '插入'.$num.'条数据成功'; }else{ return false; } } //更新数据 public function update() { // 更新单条数据 // $num = Db::table('staff') // ->where('staff_id',9) // ->update(['salary'=>6000]); // if ($num >= 1){ // return '更新'.$num.'条数据成功'; // }else{ // return false; // } //更新多条数据 $num = Db::table('staff') ->where('salary','>=',5000) //raw()引用原始字段的值 data()存储数据 参数是数组 ->data(['salary'=>Db::raw('salary+1000')]) ->update(); if ($num >= 1){ return '更新'.$num.'条数据成功'; }else{ return false; } } //删除数据 不允许无条件删除 public function delete() { $num = Db::table('staff') ->where('staff_id',16) ->delete(); if ($num >= 1){ return '删除'.$num.'条数据成功'; }else{ return false; } //清空数据表 // $num = Db::table('staff') // ->delete(true); // if ($num >= 1){ // return '删除'.$num.'条数据成功'; // }else{ // return false; // } } }
点击 "运行实例" 按钮查看在线实例