oracle ORA-06550

declare
 cnt integer;
begin
    select count(0)
    into cnt
    from user_all_tables
   where table_name = upper('DPS_BIZTYPES_MANAGE');


    if cnt = 0 then
  execute immediate '  create table DPS_BIZTYPES_MANAGE
(
 id Integer not null,
 BIZTYPE           VARCHAR2(4) not null,
 BIZNAME           VARCHAR2(30) not null,
 DEPOSITTYPE       VARCHAR2(6) not null,
 KMH               VARCHAR2(32) not null,
 DEPOSITTERM       INTEGER not null,
 STDRATE           NUMBER(10,6) not null,
 LOWRATE           NUMBER(10,6) not null,
 BOTTOMAMOUNT      NUMBER(15,2),
 MINWITHDRAWAMOUNT NUMBER(15,2),
 "COMMENT"         VARCHAR2(255),
 CREATETIME        DATE default SYSDATE not null,
 LASTUPDATETIME    DATE,
 DRAWAMOUNT        NUMBER(15,2),
 COMMENTS          VARCHAR2(255),
 BZ                VARCHAR2(3) default 'R',
 RATEFLOATUP       NUMBER(8,2),
 RATEFLOATDOWN     NUMBER(8,2),
 state INTEGER   default 0,
 stateName VARCHAR2(32),
 rejectreason VARCHAR2(255)
)';
    end if;
end;
 
ORA-06550: 第 28 行, 第 44 列: 
PLS-00103: 出现符号 "R"在须要下列之中的一个时:
 * & = - + ; < / > at in is
   mod remainder not rem return returning <an exponent (**)>
   <> or != or ~= >= <= <> and or like LIKE2_ LIKE4_ LIKEC_
   between into using || multiset bulk member SUBMULTISET_
符号 "*在 "R" 继续之前已插入。


改成BZ                VARCHAR2(3) default ''R'',


单引號括起来里面的单引號要用单引號转义,即两个表示一个。
原文地址:https://www.cnblogs.com/jhcelue/p/6839219.html