<?php
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(): 设置查询条件 表达式: 数据
- 单个条件 使用表达式
- 多个条件 使用数组
- find() 返回符合条件的第一条记录,没有的话返回null
*/
res) ? '没有找到' : $res);
}
//2.查询数据
public function select()
{
$res = Db::table('imooc_user')
->field('id,name,password')
->where([
['id', '>', 5],
['name', '=', 'imooc']
])
->select();
if (empty($res)) {
return '没有满足条件的记录';
} else {
foreach ($res as $v) {
dump($v);
}
}
}
//3.单条插入
public function insert()
{
//insert() 成功返回新增的数量,失败返回false
//准备一下要插入的数据
$data = [
'name' => "imooc3",
'password' => md5("imooc"),
'create_time' => time(),
'update_time' => time(),
];
// return Db::table('imooc_user')->insert(data, true);
// return Db::table('imooc_user')->data(data);
}
//4.添加多条
public function insertAll()
{
$data = [];
for ($i = 1; $i < 20; $i++) {
$data[] = [
'name' => "imooc{$i}",
'password' => md5("imooc{$i}"),
];
}
return Db::table('imooc_user')->insertAll($data);
}
//5.更新操作
public function update()
{
//update() 必须要有更新条件,返回影响的行数
// return Db::table('imooc_user')
// ->where('id', 43)
// ->update([
// 'name' => 'lzqlzqlzq'
// ]);
//如果更新条件是主键的话,可以直接把主键写到更新数组中
return Db::table('imooc_user')
->update([
'id' => '44',
'name' => 'lzqlzqlzq'
]);
}
//6.删除操作
public function delete()
{
// return Db::table('imooc_user')
// ->delete(44);
return Db::table('imooc_user')
->where('id', 45)
->delete();
}
//7.原生查询
public function query()
{
$sql = "SELECT `id`,`name` FROM `imooc_user` WHERE id IN (11,12)";
$res = Db::query($sql);
dump($res);
}
//原生写操作: 更新; 删除; 添加
public function execute()
{
//更新操作
// return Db::execute("UPDATE imooc_user
SET name
='lzqlzqlzq' WHERE id
= 50");
//插入操作
// return Db::execute("INSERT INTO imooc_user
(name,password) values ('lzq',123123)");
//删除操作
return Db::execute("DELETE FROM imooc_user
WHERE name
='lzqlzqlzq'");
}
}
网友评论