同之前版本相比, ThinkPHP5的数据库操作对底层进行优化设计对各种操作进行高级封裝。既可以直接使用连接器进行高效的原生査询,也可以使用封装好的查询构造器进行直观便捷的查询,为模型操作打下基础。
同样数据库配置文件 , 我们也可以在自定义配置文件下新建 , 返回的是一个数组
database.php
测试
将database.php修改文件名 , 使其失校
动态还可以通过字符串连接
示例
上面的操作一般工作不常用 , 都是使用配置文件 , 下面介绍工作常用的
操作数据库的第一步就是数据库的连接,TP5提供了强大灵活的连接方式,特别是惰性连接支持,极大提高了连接效率(db()助手函数不支持),使用户的关注重点放在业务逻辑上,不必担心连接问题啦
可以通过Connection类实现
文件在think下的db目录中 , 使用演示
占位符
更新操作
插入操作
删除操作
Connection类实例通过入口类Db静态自动调用,不用显示写出
因为数据库只能认别并运行原生SQL语句,所以对于数据库的一切查询操作,最终都要归结到原生查询。包括
后面要学到的,利用查询构造器来进行增删改查操作,最终仍是调用连接类 Connection对应方法完成。
基本上框架的sql语句执行都是高度封装的 , 很少用原生sql语句查询 , 但是再封装最后还是要转成原生sql语句执行
对于用户来说 , 只需要掌握查询类的使用方法 , 然后调用生成类生成查询语句 , 然后连接类拿到语句去执行
类库文件
生成类是一个抽象类 , 不能够被实例化 , 连接器类Connect , 所有的sql语句最终都是交给他去执行完成的
链式操作的功能 : 快速生成查询条件
链式操作所有的方法来自Query类
链式操作的返回值就是当前的查询对象
示例
查询构造器如何生成查询条件 , 第三种闭包查询是常用的
第一种
第二种 数组 适合多个条件
第三种 闭包函数
这些curd方法都是终极方法 , 能够直接对数据表完成读写操作
增加一条记录
增加多条记录
更新数据
自增操作
输出一列数据
删除一条记录
删除多条记录用数组 , delete([1001,1103]) , 清空表 delete(true)
查询条件的调用次序就是生成SQL条件的次序,推荐使用闭包,来生成查询条件,不仅功能强大,而且便于扩展。下节课开始学习模型操作,因为我们在开发过程,并不直接操作数据库,而是通过模型与数据库打交道。
BC链 http://www.chinabic.com/?id=158 转载需授权!
网友评论