摘要:<?php namespace app\index\controller; use think\Db; class Query { public function find() { &n
<?php
namespace app\index\controller;
use think\Db;
class Query
{
public function find()
{
//查询单条记录
$res = Db::table('user')
->find(5);//find里面的参数为ID号
//通常我们在使用find方法时不在括号内使用参数,而是用where条件来设置条件‘
$res = Db::table('user')
-> where('id','=',2)
-> find();
//指定字段输出结果 等于号可以省略
$res = Db::table('user')
//-> field('name,sex')//直接字符串
//-> field(['name,sex'])//直接数组作为参数
-> field(['name'=>'姓名','sex'=>'性别'])//中文别名有问题,在mysql.php中的149行加入了\x7f-\xff
-> where('id',3)
->find();
dump($res);
}
public function select()
{
//查询多条记录
$res = Db::table('user')
-> field('id,name,sex,age')
//-> where('age','>','50')//年龄大于50
-> where('age','between','30,45')//年龄在30与45之间
->order('age','DESC')//排序
->select();
echo '年龄30与45岁之间的人员有:'.'<br>';
dump($res);
}
public function insert()
{
$data = [
'name' => '张三',
'sex' => 0,
'age' => 78,
'email' => 'zhangsan@126.com',
'password' => '123456',
'status' => 1,
'create_time' => time()
];
$num = Db::table('user')
->insert($data);//返回值为一个数值,表示添加一条成功记录
$id = Db::getLastInsID();//最后添加记录的ID
//return $num ? '添加'.$num.'条记录成功,id='.$id : '没有记录被添加';
//insertGetId()方法代替 insert()和getLastInsID()
//$id = Db::table('user')->insertGetId($data);
//return $id ? '添加成功,id='.$id : '没有记录被添加';
//推荐使用data(),不要在最后的insert中使用参数
//插入多条记录inertAll()
$data = [
['name' => '杨过','sex' => 0,'age' => 31,'email' => 'yangguo1@123.com','password' => '123','status' => 1,'create_time' => time()],
['name' => '杨过2','sex' => 0,'age' => 31,'email' => 'yangguo2@123.com','password' => '123','status' => 1,'create_time' => time()],
['name' => '杨过3','sex' => 0,'age' => 32,'email' => 'yangguo3@123.com','password' => '123','status' => 1,'create_time' => time()]
];
$num = Db::table('user')
-> data($data)
->insertAll();
return $num ? '添加成功'.$num .'条记录':'没有记录添加成功';
}
public function update()
{
//更新数据必须有前置条件
$num = Db::table('user')
-> update(['sex'=>1,'id' =>1]);//id为1的记录修改性别的1女。
//return $num ? '更新成功':'更新失败';
//Db::raw()引用原始数据
$num = Db::table('user')
-> where('id','=','5')
-> data('age',Db::raw('age+10')) //Db::raw中使用的是字符串,要加入''.
->update();
return $num ? '更新成功':'更新失败';
}
public function delete()
{
//删除不允许无条件删除
// $num = Db::table('user')->delete(1); 岀除主键为1的记录
// $num = Db::table('user')->delete([12,10]);//多个主键使用数组传入
$num = Db::table('user')->where('age','=',78)->delete();
//删除全部记录delete()方法传入true: delete(true)
//$num = Db::table('user')->delete(true);
return $num ? '删除成功'.$num.'条记录' : '没有记录被删除';
}
}
?>
批改老师:天蓬老师批改时间:2019-06-13 17:06:26
老师总结:现在新版中, 已不再支持中文别名, 如果支持要用, 请注意编码