我有将数据插入表A,然后更新另一个表B的过程。
将值传递给过程后,插入似乎可以正常工作,但有时无法正常工作。
INSERT INTO A (a, b, c) VALUES (@v_a, @v_b, @v_c)
...
UPDATE B SET status = '02' WHERE a = @v_a, b = @v_b
@v_a, @v_b, @v_c
是过程从我的代码中获取的值。
代码与上面类似。当我检查表A时,它会插入正确的数据,而表B中的数据则是真实的WHERE a = @v_a, b = @v_b
。
但是有时UPDATE
无效。
我的代码是否错误?还是有人遇到过同样的问题?
编辑:
我只是在画草图,所以弄错了。该代码是
UPDATE B SET status = '02' WHERE a = @v_a AND b = @v_b
因此没有语法错误。我想我需要再次解析它。
尽管如此,谢谢您的答复。
答案 0 :(得分:0)
将逗号分隔,将变量更改为AND:
UPDATE B SET status = '02' WHERE a = @v_a AND b = @v_b;
或或:
UPDATE B SET status = '02' WHERE a = @v_a OR b = @v_b;