【发布时间】:2015-06-28 21:04:53
【问题描述】:
我是 MySQL 新手。
我想创建一个触发器,在将一条记录插入table A 后,将多条记录插入table B。
插入A 的记录有一个字段NUM(类型INT(4)),我想将记录插入B,其值从X + 1 到NUM,其中X 是最高的B 中的号码。我知道NUM 在B 中不存在,因为INSERT 使用的是IF EXISTS。
我尝试使用 WHILE 循环,但出现语法错误 - 看起来 MySQL 不允许在触发器中使用 WHILE。
我成功插入了一条值为 NUM 的记录,但我不知道如何插入所有其他记录。
【问题讨论】:
-
像Murder Mystery一样,你想要达到的目标仍然不清楚。
-
首先,让我更正一下解释,因为我很喜欢 IF NOT EXIST,以找出表 B 中是否存在值为 NUM 的记录。其次,也许可以先向我解释为什么可以'我不是在触发器中使用 WHILE 吗?如何在触发器中执行循环(在 MySQL 中)
-
为了进一步澄清我的问题:在表 A 中插入了一条记录,字段 Num=10。在表 B 中,最高键是 6。我想在表 B 中插入 4 条记录,键 = 7,键 = 8,键 = 9,键 = 10