摘要:里面的已經很方便我們進行數據庫的操作,但有些時候還需要自己寫一些語句去查詢等。在里面可以通過以下方式直接執行語句在此之前需要在里面配置數據相關信息然后再通過進行調用。要是直接用在語句中,最好要經過防注入處理。
Yii 自帶了豐富的功能 ,包括 MVC,DAO/ActiveRecord,I18N/L10N,緩存,身份驗證和基于角色的訪問控制,腳手架,測試等,可顯著縮短開發時間。
Yii里面的 DAO/ActiveRecord 已經很方便我們進行數據庫的操作,但有些時候還需要自己寫一些 sql 語句去查詢等。在 Yii 里面可以通過以下方式直接執行 sql 語句:
在此之前需要在 config/main.php 里面配置數據相關信息:
"db"=>array( "class" => "CDbConnection", "connectionString" => "mysql:host=127.0.0.1;port=3607;dbname=dbname", "emulatePrepare" => true, "username" => "root", "password" => "mysql", "charset" => "utf8", "tablePrefix"=>"pf_", ),
然后再通過 Yii::app()->db 進行調用。
方式一:
$db = Yii::app()->db; $sql = "SELECT * FROM `news` ORDER BY id DESC"; $command = $db->createCommand($sql); $result = $command->queryAll(); print_r($result);
方式二:
$db = Yii::app()->db; $sql = "select sum(if(starttime>"09:00:00",1,0)) as late,sum(if(endtime<"18:00:00",1,0)) as early from present where userid=:userid and date between :date_start and :date_end"; $results = $db->createCommand($sql)->query(array( ":userid" => 115,":date_start"=>"2009-12-1",":date_end"=>"2009-12-31", )); foreach($results as $result){ echo $result["late"]," and ",$result["early"]," /n"; }
方式三:
$sql = "select sum(if(starttime>"09:00:00",1,0)) as late,sum(if(endtime<"18:00:00",1,0)) as early from present where userid=115 and date between "2009-12-1" and "2009-12-31""; $results = $db->createCommand($sql)->query(); foreach($results as $result){ echo $result["late"]," and ",$result["early"]," /n"; }
方式四:
$db = Yii::app()->db; $oCommand = $db->createCommand("SELECT * FROM news WHERE title = :title"); $oCommand->bindParam(":title", $title, PDO::PARAM_STR); $result = $oCommand->queryAll(); print_r($result);
說明:把查詢條件作為參數(如方式二),比較安全,可直接避免注入。要是直接用在 SQL 語句中,最好要經過防注入處理。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/20963.html
摘要:第二個參數是一個數組,其中鍵為所關聯的模型中的屬性,值為當前模型中的屬性。這里注意中的第二個是指關聯的中的,第一個是指中的。 首先先來說明一下表結構 表結構 現在有訂單表、用戶表、商品清單表、商品庫存表 showImg(https://segmentfault.com/img/bVRcME?w=833&h=244); showImg(https://segmentfault.com/i...
摘要:因為剛開始學習框架的時候使用的是,后來開始接觸的時候各種不熟悉,只能是各種百度,因為自己英語很弱,花了不少時間。 因為剛開始學習php 框架的時候使用的是 CI,后來開始接觸 Yii 的時候各種不熟悉,只能是各種百度,因為自己英語很弱,花了不少時間。 如果英文不錯,可以直接看原文地址 http://www.yiiframework.com/doc/guide/1.1/en/datab...
摘要:根據條件查詢一個集合根據主鍵查詢一個集合可以使用多個主鍵根據條件查詢一個集合可以是多個條件把條件放到數組里面根據語句查詢一個數組根據主鍵查詢出一個對象根據條件查詢出一組數據可能是多個但是他只返回第一行數據根據 1、根據條件查詢一個集合 $objectResult=Post::model()->findAll($condition,$params); $oClasses = classe...
閱讀 1123·2021-11-08 13:13
閱讀 1707·2019-08-30 15:55
閱讀 2762·2019-08-29 11:26
閱讀 2427·2019-08-26 13:56
閱讀 2549·2019-08-26 12:15
閱讀 2125·2019-08-26 11:41
閱讀 1394·2019-08-26 11:00
閱讀 1530·2019-08-23 18:30