Yii2.0数据库操作笔记

2017-12-26 12:01:15

Yii如何使用数据库
  • 数据库查询(yiidbCommand)

    1. 用sql查询语句来创建一个yiidbCommand对象,调用对象的方法来执行sql查询,返回值是字符型的数组。
    $posts = Yii::$app->db->createCommand('SELECT * FROM post')->queryAll(); //查询所有的记录
    $posts = Yii::$app->db->createCommand('SELECT * FROM post')->queryOne();//查询一条记录
    $posts = Yii::$app->db->createCommand('SELECT * FROM post')
    ->bindValue(':id',intval($_GET['id']))
    ->bindValue('status','2')
    ->queryOne(); //绑过绑定参数的方式执行查询

    不过这种方法并不常用,其优点为:简单,只需要处理SQL语句即可。高效,通过SQL语句来查询数据库非常高效
    缺点也有很多,不同的数据库系统的SQL语句会有些差别,因此无法做到代码适用于多种数据库系统。用数组,而没有用到面向对象的方式来管理数据,代码难维护。如果不小心,会留下SQL注入这种不安全因素。
    因此我们并不建议用此方法来获取数据库数据。
    常用的获取数据库的方法为,ActiveRecord和QueryBuilder
    ActiveRecord和QueryBuilder是以DAO基础上,更为增强和常用的数据库访问方法