gpt4 book ai didi

mysql存储过程和触发器

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

我在 mysql 中有一个表:(_table) 有几列,其中一列包含一段文本。我想搜索包含文本 block (text) 的列,以查看它是否包含特定文本 [JOB]。如果是这样,我想在另一列 (data) 中插入 Y。或者,如果它包含 [JOB-M] 我希望它在前面提到的列 (data) 中插入 M,如果它既不包含[JOB-M]也不包含[JOB],那么它应该插入N。我希望它在每次更新或插入字段 (text) 时都遵循此过程。我想我需要创建一个存储过程和一个触发器,但我遇到了很多麻烦……有什么提示吗?
-自然

附注我知道如何在 excel 中执行此操作,但是将其传输到 mysql 一直很麻烦。这是我的 excel 公式:

=IF(ISNUMBER(SEARCH("[JOB]",X6)),"Y",IF(ISNUMBER(SEARCH("[JOB-M]",X6)),"M", "N"))

最佳答案

INSERT trigger and an UPDATE trigger会成功的:

mysql> CREATE TRIGGER TRG_BI_JOBYMN BEFORE INSERT ON _table
-> FOR EACH ROW
-> SET NEW.data = CASE
-> WHEN `text` LIKE '%[JOB]%' THEN 'Y'
-> WHEN `text` LIKE '%[JOB-M]%' THEN 'M'
-> ELSE 'N'
-> END;

mysql> CREATE TRIGGER TRG_BU_JOBYMN BEFORE UPDATE ON _table
-> FOR EACH ROW
-> SET NEW.data = CASE
-> WHEN `text` LIKE '%[JOB]%' THEN 'Y'
-> WHEN `text` LIKE '%[JOB-M]%' THEN 'M'
-> ELSE 'N'
-> END;

关于mysql存储过程和触发器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8498393/

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