小弟最近在做 2个oralce 数据之间数据的转换,用ODP做批量的更新和插入,当我提取A数据库数据到B数据时就报错了了 提示:月份中日的值必须介于 1 和当月最后一日之间。如果是因为时间格式有误那么当初为什么A库可以存进去,现在却不能存储到B库不懂????oracle存储

解决方案 »

  1.   

    是这样吗sys@ORCL> select to_date('2013/1/32','yyyy/mm/dd') from dual;
    select to_date('2013/1/32','yyyy/mm/dd') from dual
                   *
    ERROR 位于第 1 行:
    ORA-01847: 月份中日的值必须介于 1 和当月最后一日之间用to_date转换一下
      

  2.   

    已经解决了,是因为我取得数据集合中有的时间字段的值为DBNull.vlaue 加个判断就行了。不过还是感谢楼上的耐心回答。
     object value = dt.Rows[i][name];//时间字段的值
                                if (item.PropertyType.Name=="DateTime"&&value==DBNull.Value)
                                {
                                    value = DateTime.MinValue;
                                }
      

  3.   

    楼主请问你的odp连接数据库怎么弄的。我一直没弄好,你能给个demo,活着发篇详细设置的博客么