数据访问对象(DAO) 对访问存储在不同数据库管理系统(DBMS)中的数据提供了一个通用的API。 因此,在将底层 DBMS 更换为另一个时,无需修改使用了 DAO 访问数据的代码。
Yii DAO 基于 PHP Data Objects (PDO) 构建。它是一个为众多流行的DBMS提供统一数据访问的扩展,这些 DBMS 包括 MySQL, PostgreSQL 等等。因此,要使用 Yii DAO,PDO 扩展和特定的 PDO 数据库驱动(例如 PDO_MYSQL) 必须安装。
这是YII中使用sql语句进行的常规的数据库操作方式;
例如:
$connection=Yii::app()->db; //连接数据库操作
$sql='SELECT * FROM {{user}}'; //{{user}}这种方式省去了数据表前缀,如果不省去可以直接输入表全名
//执行sql语句的方式有一下几种:
$users=$connection->createCommand($sql)->queryAll(); //执行并返回结果中的所有行
$users=$connection->createCommand($sql)->queryRow(); //执行并返回结果中的第一行
$users=$connection->createCommand($sql)->queryColumn(); //查询并返回结果中的第一列
$users=$connection->createCommand($sql)->queryScalar(); //执行并返回结果中的第一个字段
$users=$connection->createCommand($sql)->execute(); //执行并返回影响的行数