小編給大家分享一下yii能不能執(zhí)行sql,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
創(chuàng)新互聯公司長期為千余家客戶提供的網站建設服務,團隊從業(yè)經驗10年,關注不同地域、不同群體,并針對不同對象提供差異化的產品和服務;打造開放共贏平臺,與合作伙伴共同營造健康的互聯網生態(tài)環(huán)境。為伊吾企業(yè)提供專業(yè)的成都做網站、網站制作,伊吾網站改版等技術服務。擁有十載豐富建站經驗和眾多成功案例,為您定制開發(fā)。1. 創(chuàng)建CDbCommand命令對象
$sql = "select * from users where id=1"; $connection=Yii::app()->db; $command=$connection->createCommand($sql);
2. SQL語句的執(zhí)行
CDbCommand對象有兩個(種)方法來執(zhí)行SQL語句。
2.1 execute()方法
用于數據更新(非查詢)操作(INSERT, UPDATE 和 DELETE),返回的是操作受影響的記錄行數。
$rowCount=$command->execute();
2.2 query()和queryXXX()方法
用于查詢,對應于SELECT語句。
2.2.1 query()方法
$dataReader=$command->query(); 返回CDbDataReader對象,注意這代表結果集而不是記錄,可以通過以下方法來獲?。ū闅v)記錄: // CDbDataReader::read()可以一次獲取一行數據,到末尾時返回false while(($row=$dataReader->read())!==false) // CDbDataReader實現了迭代器接口因此可以使用foreach遍歷 foreach($dataReader as $row) // 一次性返回所有的記錄(數組) $rows=$dataReader->readAll();
2.2.2 衍生的queryXXX()方法
#返回所有結果記錄數組 $rows=$command->queryAll(); #返回第一行記錄 $row=$command->queryRow(); // query and return the first row of result #返回所有記錄的第一列 $column=$command->queryColumn(); // query and return the first column of result #返回第一行記錄的第一列 $value=$command->queryScalar(); // query and return the first field in the first row
看完了這篇文章,相信你對“yii能不能執(zhí)行sql”有了一定的了解,如果想了解更多相關知識,歡迎關注創(chuàng)新互聯行業(yè)資訊頻道,感謝各位的閱讀!