高分求助:数据转换出错,日期格式造成数据溢出!由于误输入Oracle里有部分类似1666-12-28 00:00:00这样的日期
导入到SQL里造成数据溢出
我已经设置了只导入日期字段 >1900-01-01 00:00:00
应该已经把那部分数据过滤掉了 为什么还会出错错误源: Microsoft 数据转换服务 (DTS) 数据抽取
错误描述: 插入错误、列 52(“D_CCRQ”,DBTYPE_DBTIMESTAMP)、状态 6: 数据溢出。
错误帮助文件: sqldts80.hlp
错误帮助内容 ID: 30702

解决方案 »

  1.   

    取它的前四个字符判断
    在sqlserver里
    where cast(substring(字段,1,4) as int)>1900
      

  2.   

    因为从ORACLE里导数据  怎么判断Oracle里的数据?
      

  3.   

    导入的时候对属性进行设置一般都能解决。
    如果不能解决你可以有两种方法来做:
    1:先把它按varchar(30)来导进来再sql server里面写个函数,关着门打狗。
    2:在Oracle里建个临时表,把数据转换为sql server直接能转换的形式再转。
      

  4.   

    因为我是直接用DTS把远程的ORACLE导入到本地
    有没有直接用SQL语句可以解决的办法
      

  5.   

    在Oracle中作个视图,过滤掉SQL Server认为无效日期的数据,即此视图只保留'1900-01-01'后的数据,用DTS导入此视图的数据
      

  6.   

    有没有直接用SQL语句可以解决的办法