ThinkPHP5.0数据库操作之查询构造器

ThinkPHP5.0数据库操作之查询构造器

  Think PHP5.0查询构造器使用PDO参数绑定可以方便执行数据库操作,以免应用程序免于SQL注入,因此传入参数不需要额外的转移特殊字符

app\index\controller\index\index.php

public function db()
    {
    // 插入记录
    
        // $result = Db::table('think_data')->insert(['name'=>'黄晓明','status'=>1]);
        // dump($result);


    //更新操作
    
        // $result = Db::table('think_data')->where ('id',1)->update(['name'=>'刘德华','status'=>0]);
        // dump($result);


    //查询(不写查询条件出来的是一个二维数组,写了查询条件,出来的是一个值)
    
        // $result = Db::table('think_data')->where('id',1)->select();
        
    //删除操作
        // $result = Db::table('think_data')->where('id',1)->delete();

    }

由于在数据库配置文件中设置了数据库前缀为think_,因此,table方法可以改为name 方法,这样就不会因为数据库前缀的修改而改动CURD代码,例如:

如果使用系统助手函数db,可进一步简化代码

(db助手函数默认会每次重新链接数据库,因此应当尽量避免多次调用)



链式操作(可以完成复杂的数据库查询操作)

链式操作不分先后,只要在查询方法(select方法)前调用就可以了,所以下面查询等价的。



1.查询数据



2.添加数据

添加多条记录


(要把变量放在调用之前)


3.更新数据

更新某个字段的值

setField方法返回影响数据的条数,没修改任何数据字段返回0;

$result = Db::name('data')->where('id',1)->setField('name','thinkphp');

自增或者自减某一字段值

$result = Db::name('data')->where('id',6)->setInc('stadus');
        //默认选来数字加一
$result = Db::name('data')->where('id',7)->setDec('stadus',2);  
        //原来是四,在原基础-2

时间:2018.4.21


猜你喜欢

转载自blog.csdn.net/qq_41665015/article/details/80026007