初学存储过程,
oracle 10G
想使用存储过程实现数据校验,要求校验如下些类型:   
    
  空/非空;数据类型(数字/字符)、日期格式(固定的几种,如YYYYMMDD等)、数据长度。。从A表导入到目标表B,2表表结构不同但是字段完成相同,用存储过程将A表数据导入到目标表B中,
顺便进行数据校验
  那位高人给个例子。

解决方案 »

  1.   

    回复:“2表表结构不同但是字段完成相同”怎样理解呢?例如表A:a varchar2(30);
           b varchar2(30);
           c varchar2(30);
           d varchar2(30);表B:  a VARCHAR2(25 CHAR) NOT NULL ENABLE, 
          b date
          c number(3);
          d DATE NOT NULL ENABLE, 
    字段名都是a,b,c,d
      

  2.   

    length(a)
    length(c)
    分别判断长度,凡是超长的都是不合格的。
    还要判断是否为空!繁琐的很,但是这个语句并不困难!
      

  3.   

    将所有的字段转换成需要的类型然后insert就可以了这样保持两个表在转换的时候表的结构能保持相同