ThinkPHP5数据库实例详解 /ThinkPHP 5数据库重构

ThinkPHP 5数据库重构

ThinkPHP 5.0 数据库重构
  • TP5的数据库操作与之前3.2.3相比,有了质的飞跃,其SQL语句的构成思路与是颠覆性的。最主要体现:SQL语句的分层管理

  • 数据库操作类拆分为

    • Connection(连接器)
    • Query(查询器)
    • Builder(SQL生成器)

    如此一来,SQL标准查询语句就可分为三个部分,各司其责。

  1. Connection(连接器):负责生成数据库连接实例,即创建到指定数据库的连接;
  2. Query(查询器:负责生成查询条件表达式,即各类链式操作由该类完成,即原来的终极方法,完成对数据表的CURD操作(增删改查)
  3. Builder(SQL生成器):负责最终SQL语句的生成。

实例:查询员工表staff中工资大于等于5000元的姓名和部门

代码如下:

//数据库连接配置字符串 $dbConfig = 'mysql://root:root@localhost:3306/tp5#utf8'; //将配置字符串做为connect()的参数传入 $result=Db::connect($dbConfig) //创建数据库连接 ->table('think_staff') //选择数据表 ->field(['name'=>'姓名','dept'=>'部门']) ->where(['salary'=>['>=',5000]]) ->select(); //输出结果集 //以二维数据方式返回结果集 dump();

代码分析

1、连接器:Db::connect($dbConfig)//创建数据库连接
2、查询器: ->table('think_staff') //选择数据表
->field(['name'=>'姓名','dept'=>'部门'])
->where(['salary'=>['>=',5000]])
3、SQL生成器->select(); //输出结果集


ThinkPHP 5 全新的查询语法和链式操作,将是本教程的重点!