yii的CURD操作实例详解
这篇文章主要介绍了yii的CURD操作技巧,以实例形式详细分析了基于yii框架的增删改查的具体用法,非常具有实用价值,需要的朋友可以参考下
本文实例讲述了yii的CURD操作技巧。分享给大家供大家参考。具体分析如下:
CURD是一个数据库技术中的缩写词,一般的项目开发的各种参数的基本功能都是CURD。它代表创建(Create)、更新(Update)、读取(Retrieve)和删除(Delete)操作。本文来讲讲Yii框架的CURD操作。
一、查询数据集合
1、
复制代码 代码如下:
$admin=Admin::model()->findAll($condition,$params);
该方法是根据一个 条件查询一个集合,如:复制代码 代码如下:
findAll('username=:name',array(':name'=>$username));
2、
复制代码 代码如下:
$admin=Admin::model()->findAllByPk($postIDs,$condition,$params);
findAllByPk($id,'name like ':name' and age=:age',array(':name'=>$name,'age'=>$age));
该方法是根据主键查询一个集合,可以使用多个主键,如:复制代码 代码如下:
findAllByPk(array(1,2));
3、
复制代码 代码如下:
$admin=Admin::model()-> findAllByAttributes($attributes,$condition,$params);
该方法是根据条件查询一个集合,可以是多个条件,把条件放到数组里面,如:复制代码 代码如下:
findAllByAttributes(array('username'=>'admin'));
4、
复制代码 代码如下:
$admin=Admin::model()->findAllBySql($sql,$params);
该方法是根据SQL语句查询一个数组,如:复制代码 代码如下:
findAllBySql('select *from admin whereusername=:name',array(':name'=>'admin'));
二、查询对像的方法
1、
复制代码 代码如下:
$admin=Admin::model()->findByPk($postID,$condition,$params);
根据主键查询出一个对象,如:findByPk(1);2、
复制代码 代码如下:
$row=Admin::model()->find($condition,$params);
根据一个条件查询出一组数据,可能是多个,但是他只返回第一行数据,如:复制代码 代码如下:
find('username=:name',array(':name'=>'admin'));
3、
复制代码 代码如下:
$admin=Admin::model()-> findByAttributes($attributes,$condition,$params);
该方法是根据条件查询一组数据,可以是多个条件,把条件放到数组里面,他查询的也是第一条数据,如:复制代码 代码如下:
findByAttributes(array('username'=>'admin'));
4、
复制代码 代码如下:
$admin=Admin::model()->findBySql($sql,$params);
该方法是根据SQL语句查询一组数据,他查询的也是第一条数据,,如:复制代码 代码如下:
findBySql('select *from admin whereusername=:name',array(':name'=>'admin'));
5、拼一个获得SQL的方法,在根据find查询出一个对象
复制代码 代码如下:
$criteria=new CDbCriteria;
$criteria->select='username'; // only select the 'title' column
$criteria->condition='username=:username';
$criteria->params=array(':username=>'admin');
$post=Post::model()->find($criteria); // $params isnot needed
三、查询个数,判断查询是否有结果
1、
复制代码 代码如下:
$n=Post::model()->count($condition,$params);
该方法是根据一个条件查询一个集合有多少条记录,返回一个int型数字,如复制代码 代码如下:
count('username=:name',array(':name'=>$username));
2、
复制代码 代码如下:
$n=Post::model()->countBySql($sql,$params);
该方法是根据SQL语句查询一个集合有多少条记录,返回一个int型数字,如复制代码 代码如下:
countBySql('select *from admin whereusername=:name',array(':name'=>'admin'));
3、
复制代码 代码如下:
$exists=Post::model()->exists($condition,$params);
该方法是根据一个条件查询查询得到的数组有没有数据,如果有数据返回一个true,否则没有找到四、添加的方法
复制代码 代码如下:
$admin=newAdmin;
$admin->username=$username;
$admin->password=$password;
if($admin->save()>0){
echo '添加成功';
}else{
echo '添加失败';
}
五、修改的方法
1、
复制代码 代码如下:
Post::model()->updateAll($attributes,$condition,$params);
$count =Admin::model()->updateAll(array('username'=>'11111′,'password'=>'11111′),'password=:pass',array(':pass'=>'1111a1′));
if($count>0){
echo '修改成功';
}else{
echo '修改失败';
}
2、
复制代码 代码如下:
Post::model()->updateByPk($pk,$attributes,$condition,$params);
$count =Admin::model()->updateByPk(1,array('username'=>'admin','password'=>'admin'));
$count =Admin::model()->updateByPk(array(1,2),array('username'=>'admin','password'=>'admin'),'username=:name',array(':name'=>'admin'));
if($count>0){
echo '修改成功';
}else{
echo '修改失败';
}
$pk 代表主键,可以是一个也可以是一个集合,$attributes代表是要修改的字段的集合,$condition代表条件,$params传入的值
3、
复制代码 代码如下:
Post::model()->updateCounters($counters,$condition,$params);
$count=Admin::model()->updateCounters(array('status'=>1),'username=:name',array(':name'=>'admin'));
if($count>0){
echo '修改成功';
}else{
echo '修改失败';
}
array('status'=& gt;1)代表数据库中的admin表根据条件username='admin',查询出的所有结果status字段都自加1
六、删除的方法
1、
复制代码 代码如下:

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

熱門話題

PyCharm是一款非常受歡迎的Python整合開發環境(IDE),它提供了豐富的功能和工具,使得Python開發變得更有效率和便利。本文將為大家介紹PyCharm的基本操作方法,並提供具體的程式碼範例,幫助讀者快速入門並熟練操作工具。 1.下載安裝PyCharm首先,我們需要前往PyCharm官網(https://www.jetbrains.com/pyc

sudo(超級使用者執行)是Linux和Unix系統中的關鍵指令,允許一般使用者以root權限執行特定指令。 sudo的功能主要體現在以下幾個方面:提供權限控制:sudo透過授權使用者以臨時方式取得超級使用者權限,從而實現了對系統資源和敏感操作的嚴格控制。普通用戶只能在需要時透過sudo獲得臨時的特權,而不需要一直以超級用戶登入。提升安全性:透過使用sudo,可以避免在常規操作中使用root帳號。使用root帳戶進行所有操作可能會導致意外的系統損壞,因為任何錯誤或不小心的操作都將具有完全的權限。而

LinuxDeploy的操作步驟及注意事項LinuxDeploy是一款強大的工具,可協助使用者在Android裝置上快速部署各種Linux發行版,讓使用者在行動裝置上體驗完整的Linux系統。本文將詳細介紹LinuxDeploy的操作步驟以及注意事項,同時提供具體的程式碼範例,幫助讀者更好地使用此工具。操作步驟:安裝LinuxDeploy:首先在

想必很多的用戶家裡都有那麼幾台不用的電腦,因為長時間不用完全忘了開機密碼,於是想知道一下,忘記密碼要怎麼操作呢?那就一起來看看吧。 win10開機密碼忘記按F2怎麼操作1、按下電腦的電源鍵,然後開機時按下F2(不同電腦品牌進入bios的按鍵也不同)。 2.在bios介面中,找到security選項(不同品牌電腦的位置可能有所不同)。一般都在頂部的設定選單中。 3.然後找到SupervisorPassword選項並且點選。 4.這時候用戶就可以看到自己的密碼了,同時找到旁邊的Enabled切換為Dis

隨著智慧型手機的普及,螢幕截圖功能成為日常使用手機的必備技能之一。華為Mate60Pro作為華為公司的旗艦手機之一,其截圖功能自然也備受用戶關注。今天,我們就來分享華為Mate60Pro手機的截圖操作步驟,讓大家能夠更方便地進行截圖操作。首先,華為Mate60Pro手機提供了多種截圖方式,可以依照個人習慣選擇適合自己的方式來操作。以下詳細介紹幾種常用的截

Apple在iPhone15Pro和15ProMax中帶來了一些Pro獨有的硬體功能,吸引了所有人的注意。我們正在談論鈦合金框架、時尚的設計、全新的A17Pro晶片組、令人興奮的5倍長焦鏡頭等等。在iPhone15Pro機型添加的所有花里胡哨的功能中,操作按鈕仍然是一個突出和突出的功能。毋庸置疑,它是在iPhone上啟動操作的有用補充。也就是說,您可能會不小心按住“操作”按鈕並無意中觸發功能。坦白說,這很煩人。要避免這種情況,您應該停用iPhone15Pro和15ProMax上的操作按鈕。讓

CSS網頁滾動監聽:監聽網頁滾動事件並執行對應的操作隨著前端技術的不斷發展,網頁的效果和互動也越來越豐富多樣。其中,滾動監聽是一種常見的技術,可以實現在使用者滾動網頁時,根據滾動位置執行一些特效或操作。一般來說,滾動監聽可以透過JavaScript來實現。但是,在某些情況下,我們也可以透過純CSS來實現滾動監聽的效果。本文將介紹如何透過CSS來實現網頁的滾動

蘋果的iPhone15Pro和iPhone15ProMax引入了一個新的可編程動作按鈕,取代了音量按鈕上方的傳統響鈴/靜音開關。繼續閱讀以了解「操作」按鈕的功能,以及如何自訂。蘋果iPhone15Pro型號上全新的動作按鈕取代了啟動Ring和Silent的傳統iPhone開關。預設情況下,新按鈕仍會透過長按啟動這兩個功能,但您也可以讓長按執行一系列其他功能,包括快速存取相機或手電筒、啟動語音備忘錄、對焦模式、翻譯和放大鏡等輔助功能。您還可以將其與單一快捷方式相關聯,從而開闢大量其他可能
