万有平凡 发表于 2021-11-26 09:23:46

用PL/SQL编写存储过程时报错pls-00114,说我标识符太长

今天在用PL/SQL编写存储过程时报错pls-00114,说我标识符太长,报错的地方是我写的一条动态SQL,百度有说要修改编码集,按照步骤修改后还是报错,有大佬知道是什么问题吗,要怎么解决呢?
DECLARE
CURSOR CUR IS
    SELECT H.ZJID
      FROM HEADER_BAK H
   WHERE EXISTS (SELECT 1
            FROM DETAIL_BAK D
             WHERE H.BILLBATCHCODE = D.BILLBATCHCODE
               AND H.BILLNO = D.BILLNO);                  --找出不能匹配明细表的数据
ERR_CODE VARCHAR2(100);
SQL1 VARCHAR2(200);
BEGIN
FOR I IN CUR LOOP
    /*DBMS_OUTPUT.put_line(SQL1);*/
    EXECUTE IMMEDIATE "UPDATE HEADER_BAK SET ERR_FLAG=1,ERR_CODE='11001',ERR_TIME=SYSDATA WHERE ZJID=:XX"
            USING I.ZJID;
         
END LOOP;                                                --给不匹配明细表中的数据添加err信息
END;
页: [1]
查看完整版本: 用PL/SQL编写存储过程时报错pls-00114,说我标识符太长