sql update操作结果
Mysql
在MySQL中只有真正对记录进行修改了的情况下,row_count才会去记录影响的行数,否则如果记录存在但是没有实际修改则不会将该次更新记录到row_count中。
update操作执行结果为更新成功的行数。
如果其值为0,有两种情况:
- 记录不存在
此时不会更新任何记录 - 记录存在,要更新的字段的值与字段的当前值相同
此时不会更新任何记录
例如,update tbl_orange set value=1 where id=1;
如果id为1的记录,字段value的值已经为1,那么update操作结果为0。
另外,与Mysql版本也有关系,5.5,5.6中真正对记录进行修改才会记录影响的行数。
For UPDATE statements, the affected-rows value by default is the number of rows actually changed. If you specify the CLIENT_FOUND_ROWS flag to mysql_real_connect() when connecting to mysqld, the affected-rows value is the number of rows “found”; that is, matched by the WHERE clause.
ORACLE
在ORACLE中,只要更新的记录存在,则不论实际有没有修改数据,影响的行数都会被累积记录下来。
参考
https://blog.csdn.net/win7system/article/details/73658270
http://blog.51cto.com/samyubw/223776
https://my.oschina.net/zimingforever/blog/83810
https://dev.mysql.com/doc/refman/5.5/en//information-functions.html#function_row-count
sql update操作结果的更多相关文章
- java for循环里面执行sql语句操作,有效结果只有一次,只执行了一次sql mybatis 循环执行update生效一次 实际只执行一次
java后台controller中,for循环执行数据库操作,但是发现实际仅仅执行了一次,或者说提交成功了一次,并没有实际的个数循环 有可能是同一个对象导致的 可以仔细看一下下面两段代码有什么区别 p ...
- 如何让spark sql写mysql的时候支持update操作
如何让sparkSQL在对接mysql的时候,除了支持:Append.Overwrite.ErrorIfExists.Ignore:还要在支持update操作 1.首先了解背景 spark提供了一个枚 ...
- Oracle中如何实现Mysql的两表关联update操作
在看<MySQL 5.1参考手册>的时候,发现MySQL提供了一种两表关联update操作.原文如下: UPDATE items,month SET items.price=month.p ...
- SQL用法操作合集
SQL用法操作合集 一.表的创建 1.创建表 格式: 1 CREATE TABLE 表名 2 (列名 数据类型(宽度)[DEFAULT 表达式][COLUMN CONSTRAINT], 3 ... ...
- 使用merge同时执行insert和update操作
SQL点滴18—SqlServer中的merge操作,相当地风骚 今天在一个存储过程中看见了merge这个关键字,第一个想法是,这个是配置管理中的概念吗,把相邻两次的更改合并到一起.后来在tech ...
- 如何判断一条sql(update,delete)语句是否执行成功
如何判断一条sql(update,delete)语句是否执行成功 catch (SQLException e) { } catch不到错误应该就成功了. ============== ...
- MyBatis魔法堂:各数据库的批量Update操作
一.前言 MyBatis的update元素的用法与insert元素基本相同,因此本篇不打算重复了.本篇仅记录批量update操作的sql语句,懂得SQL语句,那么MyBatis部分的操作就简单了. ...
- SQLite支持的SQL数据操作
事务处理 Posted on 2013 年 1 月 1 日 by 林溪 事务为一组SQL命令的集合,这些SQL命令在执行时不可进行分割,即要么全部执行这些SQL命令,要么一个都不进行执行,事务操作 ...
- SQL语句操作大全
SQL语句操作大全 本文分为以下六个部分: 基础部分 提升部分 技巧部分 数据开发–经典部分 SQL Server基本函数部分 常识部分 一.基础 1.说明:创建数据库CREATE DATABAS ...
随机推荐
- python day04--列表,元祖
一.列表增删改查 1.增----append() # lst = [1, True, "哈哈", ("可口可乐", "百事可乐", &quo ...
- Ubuntu 16.04安装vsftpd 并开启ftp服务
1. 安装 sudo apt-get install vsftpd 2.可以使用下列命令来打开,关闭,重启ftp服务 sudo /etc/init.d/vsftpd start sudo /etc/i ...
- 使用U盘安装Ubuntu系统
-----------------------note by shanql-------------------------- 注:在windows下可用EasyBCD安装引导文件来引导Ubuntu( ...
- Redis过期策略(转)
1.设置过期时间 expire key time(以秒为单位)--这是最常用的方式 setex(String key, int seconds, String value)--字符串独有的方式 具体的 ...
- 特殊符号 sort_wc_uniq命令 tee_tr_split命令
* 任意个 任意字符 ? 任意一个字符 # 注释字符 \ 转意符 | 管道符 (之前有说过) cut 命令: cut -d "&quo ...
- THML分组元素
学习要点: 1.分组元素总汇 2.分组元素解析 一.分组元素总汇 元素名称 说明 ...
- Go Example--超时处理
package main import ( "fmt" "time" ) func main() { c1 := make(chan string, 1) go ...
- LeetCode - Reorganize String
Given a string S, check if the letters can be rearranged so that two characters that are adjacent to ...
- 【spring源码分析】spring ioc容器之前生今世--DefaultListableBeanFactory源码解读
spring Ioc容器的实现,从根源上是beanfactory,但真正可以作为一个可以独立使用的ioc容器还是DefaultListableBeanFactory,因此可以这么说, DefaultL ...
- Gravitee.io Access Management docker-compose运行
Gravitee.io 官方提供的docker-compose 快速运行的方式 默认ui 账户 admin adminadmin 环境准备 docker-compose 文件 # # Copyrigh ...