我的表有5列:id,piece,tube,validate,index1 当我将前一行的验证列(只有验证栏)更新为我桌上的2时,我想增加下一个具有相同管和片的index1的列验证。(我不知道我是否可以做到触发)
例如,这是我的表:
id / piece / tube / validate / index1
__________________________________________________________________
1 / 1000/ / 011 / 1 / 1
2 / 1000/ / 011 / 0 / 2
3 / 1000/ / 011 / 0 / 3
4 / 1000/ / 011 / 0 / 4
我的函数更新了id = 1的行的“validate”列 实际行验证+ 1 = 2 - >下一行验证+1
id / piece / tube / validate / index1
__________________________________________________________________
1 / 1000/ / 011 / 2 / 1
2 / 1000/ / 011 / 1 / 2
3 / 1000/ / 011 / 0 / 3
4 / 1000/ / 011 / 0 / 4
我做了那个触发器:
Create Trigger operationUp after update on operation
for each Row
begin
if validate =2
select new.index1+1
from operation
where piece=new.piece
and tube=new.tube;
Update operation set validate=validate+1
end if;
end;
但没有工作
答案 0 :(得分:0)
除了在存储的函数或触发器中,不允许通过调用函数或触发器的语句修改已经使用的表(用于读取或写入)语法错误 - 1)如果必须有一个则2)每个sql语句都必须以; (你在更新语句后缺少一个)3)你不能在触发器中返回结果集(你不能选择,即使你知道只返回了1个值,编译器也不会让你尝试)。 / p>