Excel导入到oracle sql develop 出现 “无效的月份”

来源:互联网 发布:学编程怎么赚钱 编辑:程序博客网 时间:2024/05/01 18:54

  

       一些基础性的数据,需要手动导入,也就是从excel表中导入到oracle sql develop 的oracle中。出现了"无效的月份",也就是格式和数据库要的数据格式不一样。


       然后我就改呀改,按照数据库的样式将excel表中涉及到日期的格式都改了,但是还是报这个错误。在用sql语句在 oracle sql develop插入数据的时候,涉及到日期时间的格式,会进行一次to_date的转换,也就是在你导入的时候,会自动将你的excel中的格式用函数to_date转换成oracle想要的格式。就是这种格式: 21-9月-16


       当我手动的改成这种形式的时候,导入依然报错。问了问周围的同事,他们也给了我很多建议,转换了很多很多的格式。


        另一个项目组是用oracle进行开发的,虽然我都见过,但是没有说过话,他来之后,直接给我将原表的数据导出,然后对我说“标准格式,复制粘贴吧”


       为什么我就没有想到呢?导出来一份呢?


       由于我在excel表中更改的格式是文本或者是数字,日期等等的格式,导致格式不是oracle想要的。


       我们可以用sql语句查询一下oracle当前默认的日期显示格式:

        

         select value from nls_session_parameters where parameter='NLS_DATE_FORMAT';

         

       假如查询到的日期为DD-MON-RR,然后他会进行日期的转换,例如:to_date('2016/6/6','DD-MON-RR'),这样格式是不匹配的,所以就出现了无效的月份。


       在从excel导入oracle sql develop中,生成的sql语句中如下,在对日期操作没有进行转换的,于是报错。              

                    

        

      

       觉得 oracle sql develop 比PL SQL要好用,他整体上和sql server类似,大家可以尝试的用一下。

       
                                                                                     

1 0
原创粉丝点击