簡體   English   中英

更新TIME mysql存儲過程

[英]Update TIME mysql stored procedure

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行受過程中的最后一條語句影響?

編輯:

當我在存儲過程中用正確的值(例如navid@yahoo.com)替換sp_email時,它可以正常工作!

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行。

我相信您看到的消息來自客戶端界面。 您正在使用哪個客戶端調用該過程?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM