关于oracle日期格式转换的问题

 

前些天,把mysql的数据库导到oracle10g里面。遇到了一些报错的信息,没有拷贝错误信息,因为一看就知道是日期格式错误,原来看过,但是实际没有应用过,所以,这边贴出来,作为记录,大家也可以借鉴一下。

一、情况介绍

我的mysql数据库的日期格式是:YYYY-MM-DD HH24-MI-SS(也就是中文习惯的)。可是我的oracle默认的格式是:DD-MM-RR(英文格式的)。这样就出现格式错误的问题。

二、解决方法

其实修改2个NLS的参数就可以。

alter session set NLS_DATE_LANGUAGE = 'SIMPLIFIED CHINESE';
alter session set NLS_DATE_FORMAT = 'YYYY-MM-DD HH24-MI-SS';

三、总结(纯手工输入原创的)

方式修改简单,但是一定要搞清楚NLS的各种参数,因为oracle支持太多的语言版本。所以一定注意,下面提供些NLS参数。方法简单:select * from NLS_SESSION_PARAMETERS

PARAMETER                                          VALUE                                   
------------------------------                       ----------------------------------------
1、NLS_LANGUAGE                                  SIMPLIFIED CHINESE                      
2、NLS_TERRITORY                                CHINA                                   
3、NLS_CURRENCY                                  ¥                                      
4、NLS_ISO_CURRENCY                         CHINA                                   
5、NLS_NUMERIC_CHARACTERS          .,                                      
6、NLS_CALENDAR                                 GREGORIAN                               
7、NLS_DATE_FORMAT                          DD-MON-RR                               
8、NLS_DATE_LANGUAGE                     SIMPLIFIED CHINESE                      
9、NLS_SORT                                         BINARY                                  
10、NLS_TIME_FORMAT                          HH.MI.SSXFF AM                          
11、NLS_TIMESTAMP_FORMAT               DD-MON-RR HH.MI.SSXFF AM                
12、NLS_TIME_TZ_FORMAT                    HH.MI.SSXFF AM TZR                      
13、NLS_TIMESTAMP_TZ_FORMAT        DD-MON-RR HH.MI.SSXFF AM TZR            
14、NLS_DUAL_CURRENCY                     ¥                                      
15、NLS_COMP                                        BINARY                                  
16、NLS_LENGTH_SEMANTICS                 BYTE                                    
17、NLS_NCHAR_CONV_EXCP                FALSE                                  

17 rows selected

17个,哈哈,逐一写写,不知道今天能不能写完。—_—''

1、设置客户和服务器端的显示语言,以二进制存放在"ORACLE_HOME\product_name\mesg"下面了。这个是随着操作系统而定的。中文操作系统默认就是中文。

2、决定日期、时间、货币等显示格式。

6、设置日历

7、设置日期格式

8、设置表示日、月的名字

11、设置时间显示格式

12、设置时间\时区的显示格式

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值