没有where子句的更新查询工作正常。但当我使用where子句时,它显示错误
ora-28536:处理异类服务初始化参数时出错
ora-28507:数据字典视图sys.hs$\u class\u init出错
ora-02063:mysqlèu atulsso的前两行
ora-00604:递归sql级别1发生错误
ora-02067:需要事务或保存点回滚
ora-00604:递归sql级别1发生错误
ora-02067:需要事务或保存点回滚。
我的代码:
DECLARE
A NUMBER(15) := 70;
B NUMBER(15) := 69;
BEGIN
UPDATE ATL1_SSO_ACCESS_REQ_DETAILS A SET A.REQ_ID = B;
DBMS_OUTPUT.PUT_LINE('done11');
UPDATE ATL1_SSO_ACCESS_REQ_DETAILS A SET A.REQ_ID = B WHERE A.REQ_ID = A;
COMMIT;
DBMS_OUTPUT.PUT_LINE('done');
EXCEPTION
WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE('not done1');
COMMIT;
END;
输出:done1 not done
2条答案
按热度按时间epfja78i1#
我认为在where子句中使用表别名可能是一个问题,请尝试下面的代码
vwkv1x7d2#
我得到答案了。您可以从数据库链接更新。下面是语法
例子:
我还有一个疑问。我不能用同义词更新。有语法吗?