1

我在使用 jdbc s callablestatement. This is the error I'm getting:PL/SQL 执行 pl/sql 语句时遇到困难:ORA-00933:SQL 命令未正确结束`

这是声明:

DECLARE
BEGIN
 IF ('XXX' <> 'XXX')
 THEN
    update XXX set XXX=1 where XXX='XXX' and XXX like 'XXX'

 END IF;
END;
/

它在 Oracle sql developer 中运行良好。我试过删除“/”和“END”后面的分号,但它不起作用。无论我做什么,现在都会遇到同样的错误。该帖子的值已替换为“XXX”。

你们中的任何一个聪明人有一些有用的见解吗?

4

1 回答 1

2
  1. UPDATE语句后缺少分号
  2. 由于您没有声明变量,因此DECLARE关键字是可选的
  3. 小心and XXX like 'XXX'。使用Like不带通配符的条件与使用相等运算符相同。
  4. 您可以考虑使用MERGE语句而不是这个 PL/SQL 块。
于 2013-08-02T14:46:41.543 回答