数据库增删改操作通过活动记录实例来完成

插入记录

/* ----------添加记录---------- */
// 创建活动记录对象
$article = new Article();
$article->title = "123456789";
// 添加到数据库
$data = $article->insert();// $article->save();同样效果
// 获取插入成功的id,attributes属性保存了记录的属性值
$id = $article->attributes["id"];

直接new的活动记录实例的属性都是空值

在设置属性值后调用insert或者save方法来完成插入

更新记录

/* ----------修改记录---------- */
// 获取具体需要修改的记录对象
$article = Article::findOne("1");
$article->title = "Yii2.0框架基础 模型修改记录";
$data = $article->update();// $article->save();同样效果 // 指定记录的指定字段自增操作,id=1的记录的num字段值加5
$data = Article::updateAllCounters(["num"=>5],["id"=>1]);// yii提供的计数器操作

获取指定记录,设置新的属性值,然后调用update或者save方法来完成更新

save方法会自动识别是插入还是更新操作

删除记录

/* ----------删除记录---------- */
// 获取记录对象,删除操作
$article = Article::findOne(10);// 删除单条记录
$data = $article->delete(); // 删除多条记录
$article = Article::find()->where(["id"=>11])->all();
$data = $article[0]->delete();// 通过记录集合数组的下标删除 // 删除活动记录对应数据表的所有记录
Article::deleteAll(); // datelAll删除条件
$data = Article::deleteAll("id=12");
$data = Article::deleteAll("id >= :id and num >= :num",[":id"=>13,":num"=>100]);// 使用占位符

  

yii学习笔记(6),数据库操作(增删改)的更多相关文章

  1. Mysql学习笔记(六)增删改查

    PS:数据库最基本的操作就是增删改查了... 学习内容: 数据库的增删改查 1.增...其实就是向数据库中插入数据.. 插入语句 insert into table_name values(" ...

  2. Django基础学习四_数据库的增删改查

    今天主要学习两个东西 1.如何对数据库做增删改查 2.如果将数据库中的数据用html的方式返回到前台 一.对数据库中增删改查操作 1.首先需要先见表,见表的方法我们在“http://www.cnblo ...

  3. Yii数据库操作增删改查-[增加\查询\更新\删除 AR模式]

    在Yii的开发中常常需要去使用Yii的增删改查方法,这些方法又可以多次变化和组合,带来全方位的实现对数据库的处理,下面对这些方法做一些简单的整理和梳理,有遗漏或是BUG,敬请指出.灰常感谢!!! 一. ...

  4. ThinkPHP 学习笔记 ( 三 ) 数据库操作之数据表模型和基础模型 ( Model )

    //TP 恶补ing... 一.定义数据表模型 1.模型映射 要测试数据库是否正常连接,最直接的办法就是在当前控制器中实例化数据表,然后使用 dump 函数输出,查看数据库的链接状态.代码: publ ...

  5. Django数据库操作(增删改查)

    Django数据库操作(增删改查) 创建数据库中的一个表 class Business(models.Model): #自动创建ID列 caption = models.CharField(max_l ...

  6. mysql学习笔记一 —— 数据的增删改查

    1.连接mysql mysql 直接回车(是以root身份,密码空,登陆的是本机localhost) [root@www mysql]# mysql -uroot -p123 -S /var/lib/ ...

  7. Android下数据库操作——增删改查

    Android下数据库第一种方式增删改查     1.创建一个帮助类的对象,调用getReadableDatabase方法,返回一个SqliteDatebase对象     2.使用SqliteDat ...

  8. Mybatis学习笔记之---CRUD(增删改查)

    Mybatis的CRUD(增删改查) 1.pom.xml <dependencies> <dependency> <groupId>junit</groupI ...

  9. Qt学习笔记 TableWidget使用说明和增删改操作的实现

    看一下效果很简单的一个小功能 先说分部讲一下过程 再给出详细代码 添加数据 MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ...

  10. spring框架学习之--数据库操作增删改查

    基于spring的NamedParameterJdbcTemplate操作数据库 首先在 resources 文件夹下添加数据库配置文件jdbc.properties 配置常用的数据库信息 consu ...

随机推荐

  1. Linux Firefox Adobe Flash Player 安装和更新

    1.下载 Firefox Adobe Flash Player 使用Linux上的火狐浏览器访问如下的下载网址: https://get.adobe.com/flashplayer/ 选择下载 &qu ...

  2. android之键盘转载

    显示键盘: EditText editText.setFocusable(true); editText.setFocusableInTouchMode(true); editText.request ...

  3. 扩展javascript原生对象

    原文地址: http://javascript.info/tutorial/native-prototypes 原生的javascript 对象在prototypes里面保存他们可用的方法. 比如,当 ...

  4. SQL Server ->> THROW字句对比RAISERROR子句

    SQL Server 2012开始引入了THROW字句用于替代从SQL Server开始沿用至今的RAISERROR.既然作用相同,都是在TRY... CATCH代码块后不抓错误然后抛出错误,它们之间 ...

  5. LearnHowToThink

    一.BubbleSort and XListview 1.BubbleSort (1)analysis traverse.compare.exchange.cycle.optimize strateg ...

  6. 网络协议HTTP TCP/UDP 浏览器缓存 Restful(十)

    一 TCP网络协议 1 建立TCP连接:三次握手原则 客户端通过向服务器端发送一个SYN来创建一个主动打开,作为三次握手的一部分.客户端把这段连接的序号设定为随机数 A. 服务器端应当为一个合法的SY ...

  7. ubuntu 16.04 virtualbox could not insert 'vboxdrv': Required key not available 问题解决方法

    从 内核版本 4.4.0-20 开始,在开启了 Secure Boot 的电脑上,未注册的 kernel 模块不再允许执行,所以如果想在保持 Secure Boot 的情况下依然允许执行,我们需要做的 ...

  8. Mysql学习---SQL测试题之表结构

    创建表结果和数据准备[直接执行即可] /* Navicat MySQL Data Transfer Source Server : ftl1012 Source Server Version : 50 ...

  9. 个人Hadoop编程代码记录

    **WordCount package cn.cpl.recom; import java.io.IOException; import java.util.StringTokenizer; impo ...

  10. Bash命令行 bash &> >& Bash One-Liners Explained

    Bash One-Liners Explained, Part I: Working with files https://catonmat.net/bash-one-liners-explained ...