入门ThinkPHP5.0模型篇-对数据库的操作
来源:互联网 发布:javascript 观察者模式 编辑:程序博客网 时间:2024/05/29 02:01
第一小节讲数据库操作,也就是DB类,DB类的链接,增删改查以及条件构造器的链接。
第二小节主要学习TP5的模型层,模型层和DB类功能相同,也是对数据库进行增删改查的操作,只是它有了更高级的功能,模型层只是对TP5的DB类进行又一次封装,使我们使用起来更方便。修改器,自动完成以及时间戳,数据的软删除, 通过学习模型层,完成对数据库的所有操作。
2-1数据库的连接操作
在conf文件夹下建database.php文件,将conwention.php里关于数据库操作的部分复制过去,index文件下 dump(config(‘database’)),浏览器中得到刚刚的配置参数;
namespace app\index\controller;use think\Controller;use think\Db;class Index extends Controller{ public function index() { $res=Db::connect(); dump($res); } }
此时并没有真正的连接,只有在使用的时候才真正的connect上了
2-2数据库查询
(1)使用sql语句的方式查询
$res=Db::query("select * from imooc_user where id=?",[1]); dump($res);
(2)find方法返回一条记录,返回的结果是一维数组,如果结果不存在,返回NULL
$res=Db::table('imooc_user')->where(['id'=>10])f->ind(); dump($res);
(3)select返回所有记录,返回的结果是二维数组,如果结果不存在,则返回一个空数组
$res=Db::table('imooc_user')->select(); dump($res);
(4)#value查询耨个字段值
#返回一条记录,并且是这条记录的某个字段值,如果结果不存在,返回NULL $res=Db::table('imooc_user')->where(['id'=>1])->value('email');
(5)column返回一维数组,数组中的value值就是我们要获取的列的值就是结果不存在返回空数组
$res=Db::table('imooc_user')->column('username','email');
(6)添加数据:insert 返回值是影响记录的行数,插入数
insertGetId:返回插入数据的自增id
insertAll:返回插入数据成功的行数
$db=Db::table(‘imooc_user’);
$res= $db->insert([ 'username'=>'imooc', 'password'=>'md5(imooc)', 'email'=>'imooc']);
(7)更新数据库
1.使用update方法时,必须要传递where条件 ,返回影响的行数
$db=Db::table('imooc_user'); $res=$db->where(['id'=>1])->update([ 'username'=>'lululu' ]); dump($res);
- setField仅更新某一字段,每次只更新一个字段
$res=$db->where(['id'=>2])->setField([ 'username'=>'xxf' ]);
(3)setInc 只传递一个字段名,该字段每次自增1,传递第二工人参数,该字段每次自增5
setDec,返回影响记录的行数,用于想要某个字段自减
(8)数据库删除操作
使用where条件或直接在delete中传入主键的自增id
$res=$db->where(['id'=>2])->delete(); $res=$db->delete(3);
截断数据表:phpmyadmin里选中表,点击操作,选择清空数据表
- 入门ThinkPHP5.0模型篇-对数据库的操作
- thinkphp5.0 对数据库的增删改查操作
- thinkphp5的数据库操作
- ThinkPHP5的数据库和模型用法
- ThinkPhp5.0模型的使用
- thinkphp5.0学习(七):数据库操作
- ThinkPHP5数据库操作
- thinkphp5中数据库操作
- ThinkPHP5.0框架下多对多关联模型的增删改查
- ThinkPHP5-模型和关联操作
- thinkphp5的入门学习
- ThinkPHP5.0的基本CURD操作
- ThinkPHP5.0 文件操作的错误记录
- thinkphp5 模型关联的bug
- ThinkPHP5.0-数据库
- thinkphp5.0.2 多对多模型中插入中间表字段不存在的解决办法
- 对数据库的操作
- ThinkPHP5的验证码操作
- [bzoj2086][Poi2010]Blocks
- mybatis官网参考文档-XML配置_typeAliases(版本: 3.4.6-SNAPSHOT)
- ACM复习(15)8614 素数
- 使用自定义注解+Spring AOP 实现日志记录
- #**IDEA**搭建**SSM**框架步骤
- 入门ThinkPHP5.0模型篇-对数据库的操作
- 第一次写博客
- 普通型母函数模板
- 最长递增子序列
- 找点(贪心)
- python 3.6 ,vs code 下import win32gui失败解决方案
- Java 十人过山洞
- 剑指_调整数组顺序使奇数在前偶数在后
- 机房收费系统-上机操作续