oracle报ORA-00911:invalid character

今天查问题的时候,发现一个在分号后边加注释,解析错误的问题;

select 
decode(td.invoice_type,'1','增值税专用发票','2','其他发票','3','海关进口增值税专用缴款书','4','高速通行费',
              '5','其他通行费','6','代扣代缴税收通用缴款书','7','无发票','8','后补发票',
               '9','机动车销售统一发票(可抵扣)','10','增值税普通发票(不能抵扣)','11','增值税电子发票(不能抵扣)''12','增值税电子发票(通行费)(可抵扣)') 发票类型,    
       td.invoice_code 发票代码,
       td.invoice_no   发票号码,
       td.invoice_date 开票时间,
       tp.PAYMENT_MADE_DATE 支付成功时间,
       nvl(tp.PAY_AMOUNT,0) 支付金额,
       '' 入账科目,
        tp.REC_BANK_ACCOUNT_NAME 收款人,
        td.finance_department_code 发票所属机构
       
from tp_pay_transactions tp ,t_payment V,t_invoice_detail td,t_invoice_approval_relation rea
WHERE td.invoice_id = rea.invoice_id
  and rea.claim_id = v.claim_id
  and v.tp_pay_transactions_id = tp.pay_id
  and v.paid_flag = '2'
  and td.cancel_status != '2'
  and v.hq_pay_flag != '2';--jnjnjkljb

 

     :位置

  :注释

备注:ORA-00911:invalid  character:分号解析错误;

如果你在引号后边,加了黄色那个注释;报ORA-00911:invalid  character;

为什么那?

原因就是你分号(;)解析错误;把注释也解析了,造成就不认得了;

怎么改那?

把注释加在分号里边;或者换行;

posted @ 2018-08-17 14:58  ziChuangShi  阅读(34159)  评论(0编辑  收藏  举报