本地是windows + jdeveloper 估计和ECLIPSE也差不多
  deploy的服务器是linux ,DB服务器是另外的  
  本地联的DB服务器和deploy联的DB服务器是同一个服务器
 所以我想能不能修改本地哪个地方的设置,让本地跑也必须要加TO_DATE ,否则一发布到服务器就会出错了

解决方案 »

  1.   

    最快的方法:修改WINDOWS默认的语言日期格式参数即可
      

  2.   

    你本地没有加to_date 因为你的格式就是这个。
    alter session set nls_date_format='yyyy-mm-dd';你把他修改成其他就可以啦。
      

  3.   

    如果要彻底的修改在注册表的KEY_LOCAL_MACHINE->SOFTWARE->ORACLE->HOME0
    添加字串值NLS_DATE_FORMAT.将其值设为其他你想要的格式。类似 YYYY-MM-DD-HH24:MI:SS.
      

  4.   

    修改WINDOWS默认的语言日期格式参数不行,不加TO_DATE还是可以
    alter session set nls_date_format='yyyy-mm-dd'; 不行,因为我不是在DB工具里面运行SQL,是程序里面运行SQL,没有办法每天开机先运行alter session set nls_date_format='yyyy-mm-dd';在注册表的KEY_LOCAL_MACHINE->SOFTWARE->ORACLE->HOME0
    添加字串值NLS_DATE_FORMAT.将其值设为其他你想要的格式。类似 YYYY-MM-DD-HH24:MI:SS. 
    实验中,估计悬,因为没有->ORACLE->HOME0
      

  5.   

    在注册表的KEY_LOCAL_MACHINE->SOFTWARE->ORACLE->HOME0
    添加字串值NLS_DATE_FORMAT.将其值设为其他你想要的格式。也不行了
      

  6.   

    deploy的服务器是linux 
    =======================
    还有一个可能是 NLS_DATE_LANGUAGE ( 或者 NLS_LANGUAGE,如果未定义 NLS_DATE_LANGUAGE,则使用NLS_LANGUAGE 作为 NLS_DATE_LANGUAGE )的问题。也就是说, linux 服务器的语言设置和 DB 服务器的语言设置不兼容。
      

  7.   

    这种东西,原因应当是时间格式的问题不过,发布对象不确定的话,建议还是都加上to_date
      

  8.   

    【建议还是都加上to_date】 
    你搞错了我的意思,
    我的意思是说要在UT环境下不加TO_DATE就出错,想和IT环境一致,不出错就容易遗漏,10次遗漏一次也是大问题,