由于工程原因,需要将远程的Oracle数据库表table1的dtime(Date类型)字段,copy到本地oracle数据库表table2(也是Date类型)中的dtime字段,如果table1中的dtime value是"2006-10-10 02:15:30",copy到table2中的是时候就变成了"2006-10-10",(只有时期,没有时间了),另外我直接获取table1的dtime value输出的时间是"2006-10-10 12:00:00"(格式可以变化的,但是为什么日期是对的,时间都变成了12:00:00),我要长喊一声:为什么啊~~~~
   高手?

解决方案 »

  1.   

    帮忙顶下,我们一般只用SQL和MYSQL,没用过Oracle
      

  2.   

    你的两个oracle版本不一样吧!?
      

  3.   

    或者to_date()时,需要指定format
      

  4.   

    这么说吧,我用的是hibernate读取时间,再保存到本地的,没有涉及到区域设置,时间格式...
    该怎么弄呢
      

  5.   

    像这样 
    a.setdate(b.getDate());
           session.save(a)
      

  6.   

    A a = new A();
    B b = new B();
    a.setDate(b.getDate());
    session.save(a);//保存a的记录到本地表table2
      

  7.   

    "需要将远程" "copy到本地"怎么个copy? 有些客户端支持OLE的,可以ctrl-c, ctrl-v,难道指这个?
      

  8.   

    不是的,就是用JDBC 或者 HQL读取远程服务器表的相关数据然后在本地的数据库中建一个类似的表,保存那些读过来的数据
      

  9.   

    可能1:
    你的目的表类字段类型是date而不是datetime……没保存时间的地方……可能2:
    不知道你用什么导过来的……程序?数据库工具?数据库脚本???
      

  10.   

    谢谢21bird
    对可能1:
    我用的hibernate 把POJO对象的Date属性映射到Oracle中的DATE(Oracle中没有datetime类型)
    对可能2:
    应该说是用程序倒过来的
      

  11.   

    搞定了,
    数据库用Date类型没错。   
      关键是映射的写法:如下: 
    type 不能用 date,要用 calendar .  <property   name="editTime"   column="F_EDIT_TIME"   length="7"   type="calendar"/> 
       谢谢各位
      

  12.   

    晕啊,才用完几天啊,刚换sql server就搞混了两个系统的类型……汗!