abstract:class Query{ //读操作返回的都是二维数组,没有满足条件的记录,返回的是一个空的数组 //写操作返回的是受影响的记录数量,如果没有则返回0; public function find() { //查找单挑记录 //查找表staff1 主键
class Query
{
//读操作返回的都是二维数组,没有满足条件的记录,返回的是一个空的数组
//写操作返回的是受影响的记录数量,如果没有则返回0;
public function find()
{
//查找单挑记录
//查找表staff1 主键
$res = Db::table('staff1')->find(3);//返回主键等于3的
$res2 = Db::table('staff1')
// ->field('name,sex,salary') //设置需要结果的名字 不写为 全部需要
->field(['name'=>'名字','sex'=>'性别','salary'=>'工资'])// 给对应结果的 姓名添加别名
->where('id','>',5) //返回id>2 第一个参数 字段,第二个参数 表达式,等于为默认。第三个参数 为表达式后面的条件
->find();
// 1,操作的表 2,需要操作的范围,3,操作的方法
dump($res);
echo '<hr>';
dump($res2);
}
public function select() // 查询多条记录
{
$res = Db::table('staff1')
// ->field(['name'=>'姓名','salary'=>'工资'])
->field('name,salary')
// ->where('salary>4000') //工资大于4000
->where('salary','>','1000') //方法二
->order('salary','DESC') //根据salary 排序 DESC 降序
// ->order('salary DESC') //排序方法二
->limit(5) //需要获取数据的条目,不设置 为获取全部
->select();
return $res ;
}
public function insert() //新增一条数据
{
//新增单条记录 :insert
// $data = ['name'=>'李小龙','sex'=> 0,'age'=>37,'salary'=>35000];
// $rn = Db::table('staff1')->insert($data);
// $id = Db::getLastInsID();//获取新增数据的id
// return $rn? '添加成功ID='.$id:'添加失败';
/************************************************************
/ 简易方法
*************************************************************/
// data($data); 将要处理的数据打包 $option[] 不太明白需要看文档
//insertGetId() = insert() + getLastInsID() 直接添加完获取添加的ID
// $data = ['name'=>'周华健','sex'=> 0,'age'=>58,'salary'=>3500000];
// $id = Db::table('staff1')->insertGetId($data);
// return $id?'添加成功ID='.$id:'添加失败';
//====================添加多条数据=======================================
//======================使用insertAll===================================
$data =[
['name'=>'张飞','sex'=>0,'age'=>53,'salary'=>3215],
['name'=>'关羽','sex'=>0,'age'=>52,'salary'=>3510],
['name'=>'刘备','sex'=>0,'age'=>48,'salary'=>3599],
['name'=>'诸葛亮','sex'=>0,'age'=>32,'salary'=>3620]
];
$num = Db::table('staff1')->data($data)->insertAll();
return $num?'添加的数目为:'.$num:'添加失败';
}
/*///////////////////////////////////////////////////////
数据更新
//////////////////////////////////////////////////////*/
public function update()
{
//更新操作必须是基于前置查询,不允许无条件更新
//更新使用update()
//Db::raw( '原有数据不变 +要执行的操作')
//将工资小于等于4000的员工,加薪1000元
// $num = Db::table('staff1')
// ->where('salary','<=',4000)
// ->data(['salary'=>Db::raw('salary+1000')])
// ->update();
/////////////方法二//////////////////////
$num =Db::table('staff1')
->update(['sex'=>2,'id'=>12]);
return '返回:'.$num;
}
/*//////////////////////////////////////////////////
删除操作
/////////////////////////////////////////////////////*/
public function delete()
{
//删除主键ID
// $num = Db::table('staff1')->delete(8); //删除单个,多个需要用数组标识
// $num =Db::table('staff1')->delete([12,13,14]);
//////////////////////根据条件删除//////////////////////////////////
$num =Db::table('staff1')
->where('salary','>',30000)
->delete();
//////////////////////////情况数据表////////////////////////////////////
// $num = Db::table('staff1')->delete(true);
return $num?'删除成功,删除了'.$num:'删除失败';
}
}
// dump((new Query)->select());
dump((new Query)->delete());
Correcting teacher:天蓬老师Correction time:2019-06-21 09:56:08
Teacher's summary:你的案例举的不是太好 想一下 , 如何再完善一下吧