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 '删除失败';
}

yii 数据库添加,修改,删除相关操作总结的更多相关文章

  1. Xamarin.Android 入门实例(4)之实现对 SQLLite 进行添加/修改/删除/查询操作

    1.Main.axml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns: ...

  2. day40数据库之表的相关操作

    数据库之表的相关操作1.表的操作: 1.创建表的语法:        create table 表名(              id   int(10)   primary key auto_inc ...

  3. 打通前后端全栈开发node+vue进阶【课程学习系统项目实战详细讲解】(3):用户添加/修改/删除 vue表格组件 vue分页组件

    第三章 建议学习时间8小时      总项目预计10章 学习方式:详细阅读,并手动实现相关代码(如果没有node和vue基础,请学习前面的vue和node基础博客[共10章] 演示地址:后台:demo ...

  4. Web 1三级联动 下拉框 2添加修改删除 弹框

    Web  三级联动 下拉框 using System; using System.Collections.Generic; using System.Linq; using System.Web; u ...

  5. 【转】C#添加修改删除文件文件夹大全

    [转]C#添加修改删除文件文件夹大全 C#添加修改删除文件文件夹大全 StreamWriter sw = File.AppendText(Server.MapPath(".")+& ...

  6. JavaWeb_day03_员工信息添加修改删除

    day03员工的添加,修改,删除 修改功能 思路 : 点击修改员工数据之后,跳转到单行文本,查询要修改的员工id的全部信息,主键id设置为readonly,其余的都可以修改, 修改之后,提交按钮,提交 ...

  7. Ansible 从MySQL数据库添加或删除用户

    mysql_user - 从MySQL数据库添加或删除用户. 概要 要求(在执行模块的主机上) 选项 例子 笔记 状态 支持 概要 从MySQL数据库添加或删除用户. 要求(在执行模块的主机上) My ...

  8. SpringBoot定时任务升级篇(动态添加修改删除定时任务)

    需求缘起:在发布了<Spring Boot定时任务升级篇>之后得到不少反馈,其中有一个反馈就是如何动态添加修改删除定时任务?那么我们一起看看具体怎么实现,先看下本节大纲: (1)思路说明: ...

  9. thinkphp 添加 修改删除

    在 MainController.class.php 添加 public function zhuCe() { //时间两个逻辑 // 1 显示页面 2向数据库添加 if(empty($_POST)) ...

随机推荐

  1. Java 的Throwable、error、exception的区别

    1. 什么是异常? 异常本质上是程序上的错误,包括程序逻辑错误和系统错误.比如使用空的引用(NullPointerException).数组下标越界(IndexOutOfBoundsException ...

  2. POJ:2777-Count Color(线段树+状压)

    Count Color Time Limit: 1000MS Memory Limit: 65536K Description Chosen Problem Solving and Program d ...

  3. MySQL配置允许远程登录

    MySQL默认只允许用户本地登录,需要远程连接可进行如下操作: 允许root用户在任何地方进行远程登录,并具有所有库任何操作权限: 使用root用户登录mysql: mysql -u root -p& ...

  4. Page-Object思想

    为什么要使用page-object 集中管理元素对象 集中管理一个page内的公共方法 后期维护方便 集中管理元素对象 实现方法: 调用方法: WebElement element = dri ...

  5. JS实现——用3L和5L量出4L的水

    把以下代码保存成donglanguage.html文件,使用Google或360浏览器打开 <!DOCTYPE html> <html> <head> <me ...

  6. 浅谈抓取网页数据(奉上Demo)

    Demo源码 背景 曾经在公司做过一个比价系统,就是抓取其它网站上商品的价格并和自己公司的商品进行对应,然后展示出来,给pm提供一个定价的参考.后来,有同事的朋友在找工作的时候,猎头让其做一个抓取去哪 ...

  7. Python面向对象(组合、菱形继承、多态)

    今日内容: 1.组合 2.菱形继承 3.多态与多态性 昨天内容重点回顾: 1)调用也叫实例化:发生了2件事  1.创造空对象  2.触发对象下的__init__方法,然后将p连同参数一同传给init  ...

  8. [python][oldboy] * **的用法

    * 和**主要用在函数的参数中, # coding=utf8 """ 三种编码: 1 python程序代码的编码 # coding=utf8 2 设置/查看python程 ...

  9. [git 学习篇]自己在github创建一个远程服务器创库

    现在的情景是,你已经在本地创建了一个Git仓库后,又想在GitHub创建一个Git仓库,并且让这两个仓库进行远程同步,这样,GitHub上的仓库既可以作为备份,又可以让其他人通过该仓库来协作,真是一举 ...

  10. Wannafly模拟赛2

    Contest 时间限制:1秒 空间限制:131072K 题目描述 n支队伍一共参加了三场比赛. 一支队伍x认为自己比另一支队伍y强当且仅当x在至少一场比赛中比y的排名高. 求有多少组(x,y),使得 ...