当前位置: 首页 > 知识库问答 >
问题:

为什么MySQL(MariaDB)更新事务返回“0行受影响”?

卫高谊
2023-03-14
  • 大家好。
CREATE TABLE numTable (
    firstNum INT,
    secondNum INT
);
INSERT INTO numTable (firstNum, secondNum) VALUES (1, 2);
DELIMITER ;;

CREATE PROCEDURE updateNum (
    IN num1 INT,
    IN num2 INT
)

BEGIN

START TRANSACTION;

    UPDATE  numTable
    SET     firstNum = num1, secondNum = num2;

COMMIT;

END ;;

DELIMITER ;
CALL updateNum (3, 4);

受影响的0行

当我看到这个结果时,我想‘有语法错误吗?’但是,没有。更新查询工作正常。Numtable的数据从(1,2)更改为(3,4)。

我还发现了这个。我删除了“开始事务;”和'COMMIT'语句。并再次执行updateNum SP。结果是...

共有1个答案

朱典
2023-03-14

您将使用

ROW_COUNT()

因此,在最后选择ROW_COUNT()

 类似资料:
  • 问题内容: 我有这个查询: 我的表是,我有一列名为。我要更新的是名为“ yes” 的列。 知道我在做什么错吗?当我返回查询时,它说受影响的0行。 问题答案: 如苯丙胺和Yada所建议,如果您的电话号码在表中,请使用进行检查。 但是请记住:如果所讨论的行的值已经是“是”,则mysql不会更改该值,因此将返回“受影响的0行”。因此,请务必同时检查

  • 问题内容: 假设我有一个名为“ t”的表 考虑两个MYSQL查询 同时执行两个查询还会使“受影响的行”为0(即,不更新任何行),因为第一个查询是不更新的更新,第二个查询是不匹配的更新。 有什么办法可以区分这两种情况吗? 问题答案: 如果只需要“匹配”行的数量(而不是“已更改”行的数量),则可以按以下说明进行设置: http://dev.mysql.com/doc/refman/5.5/en/mys

  • 问题内容: 我试图在扭曲的python中结合这两个查询: 和: 进入单个查询。有可能这样做吗? 我尝试将SELECT放在子查询中,但我不认为整个查询都会返回我想要的内容。 有没有办法做到这一点?(甚至更好,没有子查询)还是只需要坚持两个查询? 谢谢, 泉 问题答案: 您不能直接合并这些查询。但是您可以编写一个存储过程来执行两个查询。例:

  • 我知道(-0==0)是真的。我很想知道为什么-0 当我在stackoverflow执行上下文中运行这段代码时,它返回。 但是当我在浏览器控制台中运行相同的代码时,它返回。那是为什么呢?我试图在谷歌上搜索它,但没有找到任何有用的东西。这个问题可能不会给某个人的实际例子增加价值,我想了解JS是如何计算它的。

  • 问题内容: 我有这样的事情: 而且我总是得到“时钟周期为:0-0”的输出 知道为什么会这样吗? (仅给出一点点细节,something_else()函数使用蒙哥马利表示法执行从左到右的求幂运算,而且我不确定不确定something_else()函数确实花费了一些不可忽略的时间。) 这是在Linux上。uname -a的结果是: 问题答案: 该功能不测量CPU时钟周期。 C说: “ 从实现定义的仅与

  • 问题内容: 为什么以下返回0? 问题答案: 月份从0(一月)到11(十二月)进行编号。 参考: