成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Yii 里面直接執(zhí)行sql語句

YancyYe / 879人閱讀

摘要:里面的已經(jīng)很方便我們進(jìn)行數(shù)據(jù)庫的操作,但有些時(shí)候還需要自己寫一些語句去查詢等。在里面可以通過以下方式直接執(zhí)行語句在此之前需要在里面配置數(shù)據(jù)相關(guān)信息然后再通過進(jìn)行調(diào)用。要是直接用在語句中,最好要經(jīng)過防注入處理。

Yii 自帶了豐富的功能 ,包括 MVC,DAO/ActiveRecord,I18N/L10N緩存,身份驗(yàn)證基于角色的訪問控制腳手架,測(cè)試等,可顯著縮短開發(fā)時(shí)間。

Yii里面的 DAO/ActiveRecord 已經(jīng)很方便我們進(jìn)行數(shù)據(jù)庫的操作,但有些時(shí)候還需要自己寫一些 sql 語句去查詢等。在 Yii 里面可以通過以下方式直接執(zhí)行 sql 語句:

在此之前需要在 config/main.php 里面配置數(shù)據(jù)相關(guān)信息:

"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 進(jìn)行調(diào)用。

方式一:

$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);

說明:把查詢條件作為參數(shù)(如方式二),比較安全,可直接避免注入。要是直接用在 SQL 語句中,最好要經(jīng)過防注入處理。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/20963.html

相關(guān)文章

  • YII2中多表關(guān)聯(lián)的使用

    摘要:第二個(gè)參數(shù)是一個(gè)數(shù)組,其中鍵為所關(guān)聯(lián)的模型中的屬性,值為當(dāng)前模型中的屬性。這里注意中的第二個(gè)是指關(guān)聯(lián)的中的,第一個(gè)是指中的。 首先先來說明一下表結(jié)構(gòu) 表結(jié)構(gòu) 現(xiàn)在有訂單表、用戶表、商品清單表、商品庫存表 showImg(https://segmentfault.com/img/bVRcME?w=833&h=244); showImg(https://segmentfault.com/i...

    vslam 評(píng)論0 收藏0
  • Yii AR的使用

    摘要:因?yàn)閯傞_始學(xué)習(xí)框架的時(shí)候使用的是,后來開始接觸的時(shí)候各種不熟悉,只能是各種百度,因?yàn)樽约河⒄Z很弱,花了不少時(shí)間。 因?yàn)閯傞_始學(xué)習(xí)php 框架的時(shí)候使用的是 CI,后來開始接觸 Yii 的時(shí)候各種不熟悉,只能是各種百度,因?yàn)樽约河⒄Z很弱,花了不少時(shí)間。 如果英文不錯(cuò),可以直接看原文地址 http://www.yiiframework.com/doc/guide/1.1/en/datab...

    LiuRhoRamen 評(píng)論0 收藏0
  • Yii 1.0數(shù)據(jù)庫操作 查詢、增加、更新、刪除

    摘要:根據(jù)條件查詢一個(gè)集合根據(jù)主鍵查詢一個(gè)集合可以使用多個(gè)主鍵根據(jù)條件查詢一個(gè)集合可以是多個(gè)條件把條件放到數(shù)組里面根據(jù)語句查詢一個(gè)數(shù)組根據(jù)主鍵查詢出一個(gè)對(duì)象根據(jù)條件查詢出一組數(shù)據(jù)可能是多個(gè)但是他只返回第一行數(shù)據(jù)根據(jù) 1、根據(jù)條件查詢一個(gè)集合 $objectResult=Post::model()->findAll($condition,$params); $oClasses = classe...

    malakashi 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<