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

今天在用PL/SQL编写存储过程时报错pls-00114,说我标识符太长,报错的地方是我写的一条动态SQL,百度有说要修改编码集,按照步骤修改后还是报错,有人知道是什么问题吗,要怎么解决呢?


```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;

```

SQL1 变量的长度加大一点:

SQL1 VARCHAR2(1000);