I need Primary keys of the affected rows to be returned after updating a MYSQL table using my PHP Code.

Is there anyway to achieve this?

解决方案

You will need to fetch the primary keys before performing the UPDATE:

SELECT primary_key_columns FROM my_table WHERE status = 'O';

UPDATE my_table SET status = 'E' WHERE status = 'O';

However, if you have concurrent connections that might alter my_table between the two statements, it's possible that the results of the keys returned by the first SELECT statement will not fully match the records updated by the second UPDATE statement.

To prevent this, you would need to perform the operations in a transaction (but note that transactions require support from your storage engine - InnoDB is usually used for this purpose):

START TRANSACTION;

SELECT primary_key_columns FROM my_table WHERE status = 'O' FOR UPDATE;

UPDATE my_table SET status = 'E' WHERE status = 'O';

COMMIT;

mysql更新后返回主键,我需要在MYSQL中更新表后返回的受影响行的主键。相关推荐

  1. mybatis之update返回响应条数/受影响行数(如果更新数据与原数据一致则返回0)

    需求:笔者最近有一个需求是这样的,每个机柜每1分钟都会发一个心跳包,这个心跳包的数据如果和mysql数据库存在的数据一样,那么就不要更新了,直接给我返回一个0,我会根据这个0判断要不要存入这个心跳日志 ...

  2. MySQL 修改时返回受影响行数为 0

    刚刚在测试接口时,修改一直提示提交失败,很奇怪,之前跟移动端联调接口时,也偶尔会出现这样的问题,sql 确定没问题,怎么就提交失败呢?因为是偶尔出现的情况而且不知道怎么复现,就安慰自己说是可能有什么机 ...

  3. 我纠结的sql返回受影响行数与判断是否成功的问题

    比如:deleteSQLWhere="delete TableA where ID in(1,2,3,4,5)"; try{int i = sqlHelper.ExecuteNon ...

  4. mysql 受影响行数_关于受影响行数的详细介绍

    如何通过SQL聚合函数获得增删改的受影响行数?再做进一步动作前就能够计算出一个查询返回或者影响的行数通常都非常有用,希望分页显示结果或生成统计信息时,这种功能特别方便,那么获取受影响行数的功能是如何实 ...

  5. mysql受影响的行: 0_mysql执行update语句受影响行数是0

    mybatis连接mysql数据库,发现同一个update执行多次,返回的int值都是1. 我记得同样的update再次执行时 受影响行数是0. 后来发现,我之前一直用的SQLyog是这样子的. 原来 ...

  6. 执行update语句,返回受影响行数为0的几种情况

    首先我们都很清楚执行update语句,返回的结果是受影响的行数这是要先说的, 其次本人遇到执行update语句返回0的情况有两种 1.Update的sql语句中的where条件不成立时,返回结果是0 ...

  7. CodeIgniter2.0中sqlserver驱动返回受影响行数问题解决

    最近使用CI写项目时遇到的问题,当使用sqlserve链接操作时 修改和删除返回的受影响行数不对 解决办法如下: 找到ci框架目录中include\database\drivers\sqlsrv\sq ...

  8. SQL返回受影响行数

    ExecuteNonQuery()可以返回delete,insert,update操作受影响的行数 如果执行存储过程ExecuteNonQuery()一直返回-1,应检查存储过程中的是否有SET NO ...

  9. mysql 只返回第一条_mybatis 关联查询时,从表只返回第一条记录解决办法

    如果两表联查,主表和明细表的主键都是id的话,明细表的多条只能查询出来第一条. 造成以上情况可能的原因: 1.级联查询的时候,主表和从表有一样的字段名的时候,在mysql上命令查询是没问题的.但在my ...

最新文章

  1. 加密解密-DES算法和RSA算法
  2. 2021年春季学期-信号与系统-第三次作业参考答案-第十道题
  3. Android的代码都得自己一个个敲一遍吗?
  4. Oralce分析函数
  5. amd核芯显卡控制面板自定义分辨率_玩家 | 独立显卡和核芯显卡哪个更香?
  6. 关于Nginx location中配置proxy_pass转发时斜线'/'导致的404问题
  7. Django从理论到实战(part55)--将网站上传到GitHub
  8. zz数字图像的结课报告
  9. nssl1259-sequence【组合数,差分】
  10. 10篇写给Git初学者的最佳教程
  11. python画出roc曲线 auc计算逻辑_从scikitlearn(sklearn)的多类数据计算AUC和ROC曲线?...
  12. Mysql8.0.12解压版安装亲测(步骤超级简单)
  13. [USACO2006][poj3182]The Grove(巧妙的BFS)
  14. [C++] C/C++ 取整函数ceil(),floor()
  15. Atitit mybatis prblm n solu v1 u55 目录 1.1. 加载任意文职cfg 1 1.2. 根据dburl获取factory 1 1.3. Load any mapper
  16. Graph_Master(连通分量_C_Trajan缩点+最小路径覆盖)
  17. 酷我音乐解析API,支持搜索、歌单、单曲、专辑、MV解析、多音质切换、图片大小切换
  18. windowsXP sp2 to sp3 的升级包
  19. 微信拍一拍怎么撤回(无法撤回原因是这样的)
  20. FreeBSD常用命令110条

热门文章

  1. linux 内核 获取随机数
  2. linux命令行颜色
  3. printf 中转义字符大全
  4. 内核调试相关变量说明
  5. css和js实现3d图片,JavaScript_纯JS实现旋转图片3D展示效果,CSS:style type=text/cssgt - phpStudy...
  6. php排版word文档试卷,word选择题选项排版
  7. Ubuntu下安装中文输入法(本文安装的搜狗输入法)
  8. c语言 memset 段错误,段错误之memset对类对象的误用
  9. 对于计算机系统结构 下列,计算机系统结构模拟试题
  10. php如何检测数组是否存在,php – 如何检查数组元素是否存在?