当前页面: 开发资料首页 → J2SE 专题 → Oracle中的Date问题,很奇怪,高手帮帮忙了,急啊~~~
Oracle中的Date问题,很奇怪,高手帮帮忙了,急啊~~~
摘要: Oracle中的Date问题,很奇怪,高手帮帮忙了,急啊~~~
由于工程原因,需要将远程的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),我要长喊一声:为什么啊~~~~
高手?
帮忙顶下,我们一般只用SQL和MYSQL,没用过Oracle
3q 楼上
你的两个oracle版本不一样吧!?
有可能,我本地用的是9i的,远程的那个不太清楚了,有关系吗
9i和10G到是可以互相到数据,不过从低向高导可能会出议席问题!你的这个字段本身就是比较特殊的类型!
两台机器的区域设置是否一样?时间格式的问题
或者to_date()时,需要指定format
这么说吧,我用的是hibernate读取时间,再保存到本地的,没有涉及到区域设置,时间格式...
该怎么弄呢
像这样
a.setdate(b.getDate());
session.save(a)
A a = new A();
B b = new B();
a.setDate(b.getDate());
session.save(a);//保存a的记录到本地表table2
"需要将远程" "copy到本地"
怎么个copy? 有些客户端支持OLE的,可以ctrl-c, ctrl-v,难道指这个?
不是的,就是用JDBC 或者 HQL读取远程服务器表的相关数据然后在本地的数据库中建一个类似的表,保存那些读过来的数据
可能1:
你的目的表类字段类型是date而不是datetime……没保存时间的地方……
可能2:
不知道你用什么导过来的……程序?数据库工具?数据库脚本???
谢谢21bird
对可能1:
我用的hibernate 把POJO对象的Date属性映射到Oracle中的DATE(Oracle中没有datetime类型)
对可能2:
应该说是用程序倒过来的
搞定了,
数据库用Date类型没错。
关键是映射的写法:如下:
type 不能用 date,要用 calendar .
谢谢各位
结贴的密码是什么啊,怎么给分?!!