日期:2014-05-17  浏览次数:20849 次

请教oracle 10g 关于日期格式的问题
要实现一个根据日期来查询:
insert表中的时候日期字典用的sysdate
但是插入的数据中间有中文,比如:2010-4-26 上午 20:22:22

这样的话,查询出来的这个字段和前天传过来要查询的日期就不能用"="来匹配

用的数据库是服务器上的的,在别人的机器上登录同样的库,查询出的结果没有中间的“上午”

请问是什么原因?

------解决方案--------------------
日期格式的显示问题
执行查询之前 先执行
alter session set nls_date_format = 'yyyy-mm-dd hh24:mi:ss';
就好了
------解决方案--------------------
插入数据的时候就转换成'yyyy-mm-dd hh24:mi:ss'


------解决方案--------------------
SQL code
alter session set nls_date_format = 'yyyy-mm-dd hh24:mi:ss';
select sysdate from dual;

------解决方案--------------------
SQL code
select sysdate,to_char(sysdate,'yyyy-mm-dd hh:mi:ss') from dual

------解决方案--------------------
SQL code
 
WORKGROUP\DINGJUN-PC>select sysdate from dual;

SYSDATE
--------------
27-4月 -10

WORKGROUP\DINGJUN-PC> select * from nls_session_parameters;

PARAMETER
                                        VALUE
------------------------------------------
------------------------------------------------------ -----------------------
------------------------------------------
---------------------------------------------------------------------------
NLS_LANGUAGE
                                        SIMPLIFIED CHINESE
NLS_TERRITORY
                                        CHINA
NLS_CURRENCY
                                        ¥
NLS_ISO_CURRENCY
                                        CHINA
NLS_NUMERIC_CHARACTERS
                                        .,
NLS_CALENDAR
                                        GREGORIAN
NLS_DATE_FORMAT
                                        DD-MON-RR
NLS_DATE_LANGUAGE
                                        SIMPLIFIED CHINESE
NLS_SORT
                                        BINARY
NLS_TIME_FORMAT
                                        HH.MI.SSXFF AM
NLS_TIMESTAMP_FORMAT
                                        DD-MON-RR HH.MI.SSXFF AM

PARAMETER
                                        VALUE