Über das Hinzufügen, Löschen und Ändern des Yii-Frameworks

不言
Freigeben: 2023-04-02 10:38:02
Original
2139 Leute haben es durchsucht

Dieser Artikel stellt hauptsächlich das Hinzufügen, Löschen, Ändern und Überprüfen des Yii-Frameworks vor. Er hat einen gewissen Referenzwert. Jetzt kann ich ihn mit allen teilen, die ihn benötigen.

1. Daten abfragen

1. findAll (eine Sammlung basierend auf einer Bedingung abfragen)

$admin=Admin::model()->findAll($condition,$params);

$admin=Admin::model()->findAll("username=:name",array(":name"=>$username));

$admin=Admin::model()->findAll(“username=:name and age=:age” , array(“:name”=>$name, “age”=>$age));
 
$admin=Admin::model()->findAll(“username like :name and age=:age” , array(“:name”=>$name, “age”=>$age));
 
$infoArr= NewsList::model()->findAll("status = '1' ORDER BY id DESC limit 10 ");
Nach dem Login kopieren

2. findAllByPk (eine Sammlung basierend auf dem Primärschlüssel abfragen, mehrere Primärschlüssel können verwendet werden)

$admin=Admin::model()->findAllByPk($postIDs,$condition,$params);

$admin=Admin::model()->findAllByPk($id,"name like :name and age=:age",array(':name'=>$name,'age'=>$age));
 
$admin=Admin::model()->findAllByPk(array(1,2));
Nach dem Login kopieren

3. findAllByAttributes (fragen Sie eine Sammlung basierend auf Bedingungen ab, bei denen es sich um mehrere Bedingungen handeln kann, und fügen Sie die Bedingungen in ein Array ein)

$admin=Admin::model()->findAllByAttributes($attributes,$condition,$params);
 
$admin=Admin::model()->findAllByAttributes(array('username'=>'admin'));
Nach dem Login kopieren

4. findAllBySql( Fragen Sie ein Array basierend auf der SQL-Anweisung ab)

$admin=Admin::model()->findAllBySql($sql,$params);

$admin=Admin::model()->findAllBySql("select * from admin where username like :name",array(':name'=>'%ad%'));
Nach dem Login kopieren

5 Schlüssel)

$admin=Admin::model()->findByPk($postID,$condition,$params);

$admin=Admin::model()->findByPk(1);
Nach dem Login kopieren

6. Finden (fragen Sie einen Datensatz basierend auf einer Bedingung ab, es können mehrere sein, nur die erste Datenzeile wird zurückgegeben)

$row=Admin::model()->find($condition,$params);

$row=Admin::model()->find('username=:name',array(':name'=>'admin'));
Nach dem Login kopieren

7. findByAttributes (Fragen Sie einen Datensatz basierend auf Bedingungen ab, bei denen es sich um mehrere Bedingungen handeln kann. Fügen Sie die Bedingungen in das Array ein und fragen Sie das erste Datenelement ab )

$admin=Admin::model()->findByAttributes($attributes,$condition,$params);

$admin=Admin::model()->findByAttributes(array('username'=>'admin'));
Nach dem Login kopieren

8 , findBySql (fragen Sie einen Datensatz basierend auf SQL-Anweisungen ab, fragen Sie die ersten Daten ab)

$admin=Admin::model()->findBySql($sql,$params);

$admin=Admin::model()->findBySql("select * from admin where username=:name",array(':name'=>'admin'));
Nach dem Login kopieren

9. count (fragt basierend auf einer Bedingung ab, wie viele Datensätze es in einem Satz gibt, gibt eine int-Typnummer zurück)

$count=Post::model()->count($condition,$params);

$count=Post::model()->count("username=:name",array(":name"=>$username));
Nach dem Login kopieren

10. countBySql (fragt ab, wie viele Datensätze eine Sammlung gemäß der SQL-Anweisung hat, gibt eine int-Typnummer zurück)

$count=Post::model()->countBySql($sql,$params);

$count=Post::model()->countBySql("select * from admin where username=:name",array(':name'=>'admin'));
Nach dem Login kopieren

11 existiert (Abfrage gemäß eine Bedingung, um zu sehen, ob das erhaltene Array Daten enthält. Geben Sie „true“ zurück, andernfalls werden sie nicht gefunden)

$exists=Post::model()->exists($condition,$params);

$exists=Post::model()->exists("name=:name",array(":name"=>$username));
Nach dem Login kopieren

2. Daten hinzufügen

speichern (Daten hinzufügen)

$admin=new Admin;       

$admin->username =$username;

$admin->password =$password;

if($admin->save() > 0){echo"添加成功"; }else{echo"添加失败"; }
Nach dem Login kopieren

3. Daten ändern

aktualisieren($pk Primärschlüssel, der eins sein kann oder eine Menge, $attributes ist die Menge der zu ändernden Felder, $condition, der von $params übergebene Wert)

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"修改失败"; }

$result=PostList::model()->updateAll(array('status'=>'1'),'staff_id=:staff and host_id=:host',array(':staff'=>$staff_id,':host'=>$host_id))
Nach dem Login kopieren
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"修改失败"; }
 
Post::model()->updateCounters($counters,$condition,$params);

$count=Admin::model()->updateCounters(array('status'=>1),'username=:name',array(':name'=>'admin'));

if($count> 0){echo "修改成功"; }else{echo"修改失败"; }
Nach dem Login kopieren

array ('status'=>1) stellt die Admin-Tabelle in der Datenbank dar . Gemäß der Bedingung username='admin' wird das Statusfeld aller Abfrageergebnisse um 1 erhöht

4. Daten löschen

löschen

Post::model()->deleteAll($condition,$params);

$count=Admin::model()->deleteAll('username=:nameandpassword=:pass',array(':name'=>'admin',':pass'=>'admin'));

$count= Admin::model()->deleteAll('id in("1,2,3")');//删除id为这些的数据

if($count>0){echo"删除成功"; }else{echo"删除失败"; }
 
Post::model()->deleteByPk($pk,$condition,$params);

$count= Admin::model()->deleteByPk(1);

$count=Admin::model()->deleteByPk(array(1,2),'username=:name',array(':name'=>'admin'));

if($count>0){echo"删除成功"; }else{echo"删除失败"; }
Nach dem Login kopieren

5. createCommand

$sql="SELECT u.account,i.* FROM sys_user as u left join user_info as i on u.id=i.user_id";

$rows=Yii::app()->db->createCommand($sql)->query();

foreach($rowsas $k => $v){

    echo$v['add_time'];

}
Nach dem Login kopieren

6. Transaktionsverarbeitung

$dbTrans= Yii::app()->db->beginTransaction();

try{    

    $post=new Post;

    $post->'title'='Hello dodobook!!!';

if(!$post->save()){

throw new Exception("Error Processing Request", 1);

}

    $dbTrans->commit();

    $this->_end(0,'添加成功!!!');

}catch(Exception$e){

    $dbTrans->rollback();

    $this->_end($e->getCode(),$e->getMessage());

}
Nach dem Login kopieren

Das Obige ist der gesamte Inhalt dieses Artikels Es wird für das Lernen aller hilfreich sein. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website!

Verwandte Empfehlungen:

Erklärung, wie PHP zulässt, dass Elemente mit demselben Wert in einem Array ein neues Array bilden

Detaillierte Erklärung zur Lösung des Problems inkonsistenter PHP-Stringlängen

Laravel5.2 verwendet Captcha, um Bestätigungscodes zur Implementierung der Anmeldung zu generieren

Das obige ist der detaillierte Inhalt vonÜber das Hinzufügen, Löschen und Ändern des Yii-Frameworks. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!