在Yii中直接使用sql
程序员文章站
2022-07-14 09:32:31
...
在Yii中直接使用sql,是建立在php扩展PDO的基础之上。(使用前,确保PDO已安装)
一、建立连接
$connection = Yii::app()->db;
其中db是在../config/main.php中配置的
二、使用sql
1,查询——query
方式一:最简洁
方式二:主要区别在查询动作。
可拆分为两步
2,创建、更新和删除——execute
$rowCount = $command->execute(); //执行
三、query的高级用法
$row = $command->queryRow(); //取多列结果中的第一列
$column = $command->queryColumn(); //取多列结果中第一行的第一列
$value = $command->queryScalar(); //取多列结果中第一行的第一字段
四、使用事务
如果您觉得本文的内容对您的学习有所帮助,您可以微信:
[img]http://dl2.iteye.com/upload/attachment/0109/0668/fb266dfa-95ca-3d09-b41e-5f04a19ba9a1.png[/img]
一、建立连接
$connection = Yii::app()->db;
其中db是在../config/main.php中配置的
二、使用sql
1,查询——query
方式一:最简洁
$sql = "select a.id,b.name,parts_type,parts_model,partManufacturer,number,confirm_ok_num,confirm_bad_num from fail_parts a, idc b where a.idc_id = b.id and a.status_id != 731 and confirm_bad_num != 0 order by b.name;";
//可以写成
//$connection = Yii::app()->db;
//$command = $connection->createCommand($sql)
$command = Yii::app()->db->createCommand($sql);
$rows = $command->queryAll(); //结果数组,多行的内容
var_dump($rows);
foreach($rows as $row){
var_dump($row);//一行的内容
}
方式二:主要区别在查询动作。
可拆分为两步
$dataReader = $command->query();
while(($row = $dataReader->read()) !== false){
var_dump($row);//一行的内容
}
2,创建、更新和删除——execute
$rowCount = $command->execute(); //执行
三、query的高级用法
$row = $command->queryRow(); //取多列结果中的第一列
$column = $command->queryColumn(); //取多列结果中第一行的第一列
$value = $command->queryScalar(); //取多列结果中第一行的第一字段
四、使用事务
$trans = $connection->beginTransaction();
//$trans = Yii::app()->db->beginTransaction();
try{
$connection->createCommand($sql1)->execute();
$connection->createCommand($sql2)->execute();
...
$trans->commit();
} catch (Exception $e) {
$trans->rollBack();
}
如果您觉得本文的内容对您的学习有所帮助,您可以微信:
[img]http://dl2.iteye.com/upload/attachment/0109/0668/fb266dfa-95ca-3d09-b41e-5f04a19ba9a1.png[/img]
推荐阅读
-
Word2000和Word2002中的宏在Office Word 2003中的使用
-
在Word2010中使用“撤销键入”或“恢复键入”功能
-
在MySQL中自定义参数的使用详解
-
在sqlserver2005中安装sql server 2000的示例数据库northwind的方法
-
如何在SQL SERVER 2005存储过程中,使用循环语句
-
sql server 2005中使用with实现递归的方法
-
解析SQL2005中如何使用CLR函数获取行号
-
SQL2005中char nchar varchar nvarchar数据类型的区别和使用环境讲解
-
clipboard在vue中的使用的方法示例
-
Winform中在使用Dock属性设计页面布局控件的顺序导致页面效果不同的问题