嗨,大家好我在触发器的某个位置有以下代码。 (INSERT AFTER触发器)MySQL TRIGGER奇怪的行为
DECLARE Interv int;
在某些时候我使用下面的代码:
SELECT myfield FROM TABLE WHERE interv=new.interv
但显然mysql的混淆了两个变量的值(NEW.INTERV AND INTERV)
和鸵鸟政策返回我正确的查询的价值。
但是,如果我使用DECLARE Interv_Value int
而不是DECLARE Interv int
问题SELECT
工作正常。
任何想法?我正在使用MySQL 5.1.68。
你的桌子实际上有'interv'字段吗?如果是这样,那么难怪mysql会感到困惑。如果您将变量命名为与表字段相同,那么实际字段将优先于相同名称的变量。 – 2014-09-03 14:45:43