我有这个问题: 如果我写下面的查询:
INSERT INTO prodotto (Barcode, InseritoDa, DataInserimento, UrlImage)
VALUES ('vfr','ff','12-10-2012', 'vfr.jpg')
我收到此错误消息:
Error Code: 1054. Unknown column 'InseritoDa' in 'where clause'
但在表prodotto我有这个coloumn和它的名字InseritoDa。我哪里错了? 错误可能是因为字段InseritoDa是指向另一个名为utente的表的外键?
与表关联的触发器是:
-- Trigger DDL Statements
DELIMITER $$
USE `m4af`$$
CREATE
DEFINER=`root`@`localhost`
TRIGGER `m4af`.`IncrementaProdottiInseritiUtente`
AFTER INSERT ON `m4af`.`prodotto`
FOR EACH ROW
update utente as u
set ProdottiInseriti= (select ProdottiInseriti from utente where username= InseritoDa)+1
where u.username = InseritoDa$$
答案 0 :(得分:3)
由于错误表明它出现在 WHERE 子句中,因此可能存在执行另一个查询并且失败的insert-trigger。插入语句中没有WHERE子句。
尝试编辑INSERT触发器,如下所示:
update utente
set ProdottiInseriti = ProdottiInseriti + 1
where username = NEW.InseritoDa