MySQL 存储过程我

Posted

技术标签:

【中文标题】MySQL 存储过程我【英文标题】:MySQL Stored Procedures i 【发布时间】:2020-08-03 00:40:05 【问题描述】:

我是使用 mysql Workbench 的新手。我有一张名为 requests 的表。它有一个名为 STATUS 的列和另一个名为 EXPIREDDATE 的列。我想创建一个存储过程,如果 EXPIREDDATE 中的日期超过今天的日期,则将文本“过期”输入到 STATUS 列中。代码的开头如下。谢谢。

CREATE PROCEDURE `Add Expired` ( IF expireddate => todays date THEN status = "expired")
BEGIN

END

【问题讨论】:

为什么还需要一个专栏?每当您在字段上运行查询时,您都可以使用 IF (ExpiryDate 【参考方案1】:

如果B 列中的日期超过今天的日期,则在A 列中输入文本“已过期”

您正在描述带有过滤的update 语句:

update mytable set a = 'expired' where b > current_date

您可以轻松地将其转换为存储过程 - 尽管它不会很有帮助(您可以只运行查询)。

【讨论】:

啊,我明白了,非常感谢!我刚刚更新了我的帖子,你能看到我是如何执行存储过程的吗?我可以这样做吗?谢谢 @kumbi:你不需要存储过程。只需按原样使用update 查询即可。

以上是关于MySQL 存储过程我的主要内容,如果未能解决你的问题,请参考以下文章

MySQL 从另一个存储过程调用存储过程

mysql 存储过程怎么赋值?

关于mysql 的存储过程

MySQL 存储过程权限

简单的mysql存储过程

mysql存储过程 怎么用like 得不到结果