oracle 10g,默认的时间格式是:
23-oct-2001 12:0:0我修改了注册表的KEY_LOCAL_MACHINE->SOFTWARE->ORACLE->HOME0
添加字串值NLS_DATE_FORMAT.将其值设为YYYY-MM-DD HH24:MI:SS
还是不行,我的注册表没有home0这个键,只有
KEY_OraClient10g_home1       和KEY_OraDb10g_home1我都改了,而且重新启动了,还是一样的。
select sysdate from dual;
-------
23-oct-2001
如果我
alter session set nls_date_format='YYYY-MM-DD'
能有效果
select sysdate from dual;
-------
2001-10-23但都说,只对当前窗口有效果,而且重新启动就没有了
请问到底该如何修改?

解决方案 »

  1.   

    -- 将下面这个语句添加到类似于D:\oracle\product\10.2.0\db_1\sqlplus\admin\glogin.sql中:
    alter session set nls_date_format='YYYY-MM-DD'
      

  2.   

    你用什么工具开发的,在PLSQL里有专门修改时间格式的操作。有oracle默认的,还有用户自定义的
      

  3.   

    D:\oracle\product\10.2.0\db_1\sqlplus\admin\glogin.sql文件内容我改了加在文件最后了
    COLUMN other_plus_exp FORMAT a44-- Default for XQUERY
    COLUMN result_plus_xquery HEADING 'Result Sequence'
    ALTER SESSION SET NLS_DATE_FORMAT='YYYY-MM-DD HH24:MI:SS'重新启动  还是不行
      

  4.   

    alter session set nls_date_format='YYYY-MM-DD' 只针对当前会话,重启后肯定没效果了。你修改注册表的方法是对的啊,应当可以。给 NLS_DATE_FORMAT 添加值的时候不加引号
      

  5.   

    这个格式可以转换啊 为什么非得用sysdate呢
    to_char(sysdate,'yyyy-mm-dd')不行吗?
      

  6.   

    使用 ORACLE LOCALE BUILDER 工具可以设置时间格式
      

  7.   


    -- 不是重不重启动的问题,是要退出当前会话,然后再次登录就可以啦!
    -- 要明白Oracle数据库体系结构及原理啊......
      

  8.   

    -- 将下面这个语句添加到类似于D:\oracle\product\10.2.0\db_1\sqlplus\admin\glogin.sql中:
    alter session set nls_date_format='YYYY-MM-DD'不行啊