Heim  >  Artikel  >  php教程  >  yii 数据库添加,修改,删除相关操作总结

yii 数据库添加,修改,删除相关操作总结

WBOY
WBOYOriginal
2016-06-13 09:07:23859Durchsuche

yii 数据库添加,修改,删除相关操作总结

本文总结了yii中关于数据信息的添加数据,修改数据,删除数据的相关操作,刚刚学习没几天,仅记录了一些,以后慢慢再充实,有需要的朋友可以看看。

添加数据的方法

(1)save 方法(对象形式操作)

$user=new User;
$user->username='phpernote';
$user->password='123456';
if($user->save()>0){
    echo '添加成功';
}else{
    echo '添加失败';
}

(2)insert 方法(数组形式操作)

Yii::app()->dbName->createCommand()->insert('tbl_user',
    array(
        'username'=>'phpernote',
        'password'=>'123456'
 )
);

(3)insert 方法(对象形式操作)

$user=new User();
$user->username='phpernote';
$user->password='123456';
if($user->insert()){
    echo '添加成功';
}else{
    echo '添加失败';
}

修改数据的方法

(1)Post::model()->updateAll($attributes,$condition,$params);
 
$count=User::model()->updateAll(array('username'=>'phpernote','password'=>'123456'),'id=:id',array(':id'=>$id));
if($count>0){
    echo '修改成功';
}else{
    echo '修改失败';
}
 
(2)Post::model()->updateByPk($pk,$attributes,$condition,$params);
 
$count=User::model()->updateByPk(1,array('username'=>'admin','password'=>'123456'));

或者

$count=User::model()->updateByPk(array(1,2),array('username'=>'admin','password'=>'123456'),'username=:name',array(':name'=>'admin'));
if($count>0){
    echo '修改成功';
}else{
    echo '修改失败';
}
$pk代表主键,可以是一个也可以是一个集合,$attributes代表是要修改的字段的集合,$condition代表条件,$params传入的值
 
(3)Post::model()->updateCounters($counters,$condition,$params);
 
$count =User::model()->updateCounters(array('status'=>1),'username=:name',array(':name'=>'admin'));
if($count>0){
    echo '修改成功';
}else{
    echo '修改失败';
}
array('status'=>1)代表数据库中的admin表根据条件username='admin',查询出的所有结果status字段都自动加 1

User::model()->updateCounters(array('count'=>1), 'id='.User::model()->id);//自动叠加 1

User::model()->updateCounters(array('count'=>-1), 'id='.User::model()->id);//自动递减 1

(4)Yii::app()->dbName->createCommand()->update($attributes,$condition,$params);

Yii::app()->dbName->createCommand()->update('tbl_user',
    array(
        'username'=>'phpernote'
 ),
 'id=:id',
 array(
        ':id'=>3
 )
);

删除数据的方法
 
(1)Post::model()->deleteAll($condition,$params);

例如:
 
$count=User::model()->deleteAll('username=:name AND password=:pass',array(':name'=>'phpernote',':pass'=>'123456'));

或者:

$count=User::model()->deleteAll('id in("1,2,3")'); //删除id为这些的数据
if($count>0){
    echo '删除成功';
}else{
    echo '删除失败';
}
 
(2)Post::model()->deleteByPk($pk,$condition,$params);

例如:

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

或者:

$count=User::model()->deleteByPk(array(1,2),'username=:name',array(':name'=>'admin'));
if($count>0){
    echo '删除成功';
}else{
    echo '删除失败';
}

您可能感兴趣的文章

  • PHP在引号前面添加反斜杠的原因及PHP去除反斜杠的办法,三种办法关闭php魔术引号
  • Mysql 数据库缓存cache功能分析,调试以及性能总结
  • php mysql数据库操作类
  • FckEditor添加右键菜单-图片删除功能
  • 总结MySQL数据库服务器逐渐变慢的原因和解决办法
  • mysql服务器主从数据库同步配置
  • php清空(删除)指定目录下的文件,不删除目录文件夹的方法
  • php利用array_flip实现数组键值交换去除数组重复值
Stellungnahme:
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