执行过程错误“ ORA-00911:无效字符”

时间:2019-03-26 09:16:50

标签: oracle procedure

我创建新过程来更新数据库表(po_headers_all)和表字段(ATTRIBUTE2)中错误的sql字段。 然后,当我尝试执行该过程时,显示“ ORA-00911:无效字符”的错误

在数据库环境中运行脚本: ORACLE 12C

 procedure update_epo_attribute2 (epo_num NUMBER, P_ORG_ID NUMBER) IS

BEGIN

 UPDATE apps.po_headers_all
 SET ATTRIBUTE2 = 'Contract'
   WHERE  ATTRIBUTE2 = 'Perm'
     AND segment1 = EPO_NUM
     AND org_id = P_ORG_ID
     AND segment1 IN (SELECT poh.segment1
                        FROM   apps.po_requisition_headers_all prh,
                               apps.po_requisition_lines_all prl, 
                               apps.po_req_distributions_all prd,
                               apps.po_headers_all poh,
                               apps.po_distributions_all pda       
                        WHERE prh.requisition_header_id = prl.requisition_header_id
                          AND prh.type_lookup_code = 'PURCHASE'
                          AND prd.requisition_line_id = prl.requisition_line_id
                          AND pda.req_distribution_id (+) = prd.distribution_id
                          AND pda.po_header_id = poh.po_header_id (+)
                          AND poh.ATTRIBUTE2 = 'Perm'
                          AND prl.SUGGESTED_VENDOR_LOCATION = 'CONTRACT');

commit;

end;

然后,在ORACLE表单控件中执行过程脚本的以下内容:

='declare
   begin
    PO_ETL.update_epo_attribute2 ('''||${item.PO_HEADERS.SEGMENT1.VALUE}||''','''||$${item.PO_HEADERS.ORG_ID.VALUE}||''');
  end'

结果失败,并显示错误消息“ ORA-00911:无效字符”

0 个答案:

没有答案