错误代码:1442无法更新存储函数/触发器中的表'wine',因为它已被语句使用

7tofc5zh  于 2021-07-26  发布在  Java
关注(0)|答案(4)|浏览(400)

我已经阅读了本论坛的4个案例错误代码:1442。无法更新存储函数/触发器中的表'tablename',因为它已被语句“”使用。那些案子比我的情况复杂得多。我创建了一个包含5个字段的表,加载了10条记录,并创建了一个触发器:

CREATE TRIGGER Trigger_Before_An_ArgentineWines_update 
AFTER UPDATE ON ArgentineWines
FOR EACH ROW 
INSERT INTO ArgentineWines
SET action = 'update',
RankingId = OLD.RankingId,
WineName = OLD.WineName,
Description = OLD.Description,
RecordDate = NOW();

当我试图通过更改表来测试触发器时,问题就出现了。我尝试用两种不同的方法更新表

of1yzvn4

of1yzvn42#


Use Sakila;
UPDATE ArgentineWines
SET WineName = REPLACE(WineName,'GRAFFIGNA RESERVE','GRAFFIGNA RESERVE Grandiose')
WHERE  RankingId = 6;
p8ekf7hl

p8ekf7hl4#


Use Sakila;
UPDATE ArgentineWines
SET WineName = 'GRAFFIGNA RESERVE Grandiose'
WHERE RankingId = 6;

不管我怎么做,它都会产生这样的错误:“错误代码:1442。无法更新存储函数/触发器中的表“0”,因为它已被调用此存储函数/触发器的语句使用。“我以前用过,以后用过,不管不断出现什么错误。
问题:还有哪个语句正在调用我的存储过程?。什么已经在用什么?。错误描述不是很清楚。
拜托,任何想法或解决这个谜的办法都会很好。dh公司

相关问题