gpt4 book ai didi

mysql - 更新 TIME mysql 存储过程

转载 作者:行者123 更新时间:2023-11-30 01:29:37 25 4
gpt4 key购买 nike

mySql:您的 SQL 查询已成功执行

0 行受过程内最后一条语句影响

CREATE DEFINER=`root`@`localhost` PROCEDURE `update_adm`(OUT `sp_out` INT(11), IN `sp_email` VARCHAR(50) CHARSET utf8)
NO SQL
BEGIN
UPDATE `admin` SET `last_try`=curtime() WHERE `email`=sp_email;
SET sp_out=ROW_COUNT();
END

为什么 0 行受到过程内最后一条语句的影响?!

编辑:

当我在存储过程中将 sp_email 替换为正确的值(例如 navid@yahoo.com)时,它工作得很好!

CREATE DEFINER=`root`@`localhost` PROCEDURE `update_adm`()
NO SQL
BEGIN
UPDATE `admin` SET `last_try`=curtime() WHERE `email`='navid@yahoo.com';
END

最佳答案

从 MySQL 命令行,输出符合预期。

mysql> delimiter $$
mysql> CREATE DEFINER=`root`@`localhost PROCEDURE update_adm( ...
-> END$$
Query OK, 0 rows affected (0.16 sec)

mysql> delimiter ;

mysql> insert into admin values (null,'foo');
Query OK, 1 row affected (0.00 sec)

mysql> call update_adm(@cnt,'foo');
Query OK, 1 row affected (0.00 sec)

mysql> call update_adm(@cnt,'bar');
Query OK, 0 rows affected (0.00 sec)

当我使用现有电子邮件调用该过程时,我收到一条消息,显示 1 行受到影响。当我使用确实存在的电子邮件调用该过程时,它会返回一条消息,显示 0 行受到影响。

我相信您看到的消息来自客户端界面。您使用什么客户端来调用该过程?

关于mysql - 更新 TIME mysql 存储过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17626229/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com