create table META_CODE 
(
   META_CODE            VARCHAR2(30) not null,
   DOMAIN_CODE          VARCHAR2(100) not null,
   META_CODE_NAME       VARCHAR2(100) not null,
   EFF_DT               DATE default SYSDATE not null
      constraint CKC_EFF_DT_META_COD check (EFF_DT between '1900-01-01' and '2050-12-31'),
   EXP_DT               DATE                 default '2050-12-31 23:59:59' not null,
   STATUS               NUMBER(1)            default 9 not null
      constraint CKC_STATUS_META_COD check (STATUS between 0 and 1 and STATUS in (0,1,2,9)),
   CREATED_BY           VARCHAR2(30)         not null,
   CREATED_TMP          TIMESTAMP            not null,
   LST_UPD_BY           VARCHAR2(30)         not null,
   LST_UPD_TMP          TIMESTAMP            not null,
   SRC_SYS              VARCHAR2(30)         default '0' not null
      constraint CKC_SRC_SYS_META_COD check (SRC_SYS in ('TPSS','CRM','HB','OCS','ABM','ICS','VC','ODS','其他')),
   constraint PK_META_CODE primary key (META_CODE, DOMAIN_CODE)
);

解决方案 »

  1.   

    check (EFF_DT between '1900-01-01' and '2050-12-31')
    =>
    check (EFF_DT >= date'1900-01-01' and EFF_DT<date'2050-12-31'+1)
      

  2.   

          constraint CKC_EFF_DT_META_COD check (EFF_DT between '1900-01-01' and '2050-12-31'),
       EXP_DT               DATE                 default '2050-12-31 23:59:59' not null,
    这些是字符串,要显示的声明日期格式 ,解决方法可参考 2# 大版的语句,或 to_date 函数;