public class Test{
public static void main (String args []){
java.util.Date a = new java.util.Date();
System.out.println(a);
java.sql.Date b = new java.sql.Date(a.getTime());
System.out.println(b);
java.sql.Time c = new java.sql.Time(a.getTime());
System.out.println(c);
java.sql.Timestamp d=new java.sql.Timestamp(a.getTime());
System.out.println(d);
}
}
结果:
Mon Apr 03 18:00:34 CST 2006
2006-04-03
18:00:34
2006-04-03 18:00:34.388
1.
oracle
默
认
的系
统时间
就是
sysdate
函数,
储
存的数据形如
25-3-
2005
10:55:33
2.
java 中取
时间
的
对
象
是java.util.Date
。
3.
oracle
中
对应的
时间对
象
是java.util.Date
,
java.sql.Time
,
java.sql.Timestamp
、
它们都是
是java.util.Date的子
类
。
4.
oracle
中
与
date操作
关
系最大的就是两个
转换
函数:
to_date(),to_char()
。
to_date()
一般用于写入日期到数据库时用到的函数。
to_char()
一般用于从数据库读入日期时用到的函数。
DATE
、
TIME
和
TIMESTAMP
:
SQL
定义了三种与时间有关的数据类型:
DATE
由日、月和年组成。
TIME
由小时、分钟和秒组成。
TIMESTAMP
将
DATE
和
TIME
结合起来,并添加了纳秒域。
标准
Java
类
java.util.Date
可提供日期和时间信息。但由于该类包含
DATE
和
TIME
信息而没有
TIMESTAMP
所需的纳秒,因此并不与上述三种
SQL
类型完全相配。
因此我们定义了
java.util.Date
的三种子类。它们是:
1.
有关
SQL DATE
信息的
java.sql.Date
2.
有关
SQL TIME
信息的
java.sql.Time
3.
有关
SQL TIMESTAMP
信息的
java.sql.Timestamp
对于
java.sql.Time
,
java.util.Time
基本类的小时、分钟、秒和毫秒域被设置为零。 对于
java.sql.Date
,
java.util.Date
基本类的年、月和日域被分别设置为
1970
年
1
月
1
日。这是在
Java
新纪元中的
“
零
”
日期。
java.sql.date
中的日期可以和
标
准的
SQL
语
句中含有日期的字段
进
行比
较
.
java.sql.Timestamp
类通过添加纳秒域来扩展
java.util.Date
。
oracle
中
两个转换函数:
1.
to_date()
作用将字符类型按一定格式转化为日期类型:
具体用法
:to_date(''2004-11-27'',''yyyy-mm-dd''),
前者为字符串,后者为转换日期格式,注意,前后两者要以一对应。如
;to_date(''2004-11-27 13:34:43'', ''yyyy-mm-dd hh24:mi:ss'')
将得到具体的时间。
2.
to_char():将日期
转
按一定格式
换
成字符
类
型
:
具体用法
:
to_char(sysdate,''yyyy-mm-dd hh24:mi:ss'')
to_date()
与
24
小
时
制表示法及
mm
分
钟
的
显
示
:
在使用
Oracle
的
to_date
函数来做日期
转换时
,很多
Java
程序
员
也
许
会直接的采用
“yyyy-MM-dd HH:mm:ss”
的格式作
为
格式
进
行
转换
,但是在
Oracle
中会引起
错误
:
“ORA 01810
格式代
码
出
现
两次
”
。
如:select to_date('2005-01-01 13:14:20','yyyy-MM-dd HH24:mm:ss') from dual;
原因是
SQL
中不区分大小写,
MM
和
mm
被
认为
是相同的格式代
码
,所以
Oracle
的
SQL
采用了
mi
代替分
钟
。
oracle默
认
的系
统时间
就是sysdate函数,
储
存的数据形如2005-3-2510:55:33
,
java 中取
时间
的
对
象
是java.util.Date
。
select to_date('2005-01-01
13:14:20
','yyyy-MM-dd HH24:mi:ss') from dual
在
java
对
oracle
的操作中,对日期字段操作的例子:
表
book
中有
name varchar2(20)//
书籍名称
,buydate Date //
购买日期 两个字段。
已经创建了数据库连接
Connection conn;
方法一、使用
java.sql.Date
实现比较简单的
yyyy-mm-dd
格式日期。
java.sql.Date
不支持时间格式。切记不要使用
new java.sql.Date(int year,int month,int date),
因为还要处理时间差问题。
PreparedStatement pstmt = conn.prepareStatement("insert into book (name,buydate) values (?,?)");
java.sql.Date buydate=java.sql.Date.valueOf("2005-06-08");
pstmt.setString(1, "Java
编程思想
");
pstmt.setDate(2,buydate );
pstmt.execute();
方法二、使用
java.sql.Timestamp,
同上不使用
new Timestamp(....)
PreparedStatement pstmt = conn.prepareStatement("insert into book (name,buydate) values (?,?)");
java.sql.Timestamp buydate=java.sql.Timestamp.valueOf("2004-06-08 05:33:99");
pstmt.setString(1, "Java
编程思想
");
pstmt.setTimestamp(2,buydate );
pstmt.execute();
方法三、使用
oracle
的
to_date
内置函数
PreparedStatement
pstmt = conn.prepareStatement("insert into book (name,buydate) values
(?,to_date(?, 'yyyy-mm-dd hh24:mi:ss')");
String buydate="2004-06-08 05:33:99";
pstmt.setString(1, "Java
编程思想
");
pstmt.setString(2,buydate );
pstmt.execute();
附
:oracle
日期格式参数含义说明
d:
一周中的星期几
day:
天的名字,使用空格填充到
9
个字符
dd:
月中的第几天
ddd:
年中的第几天
dy:
天的简写名
iw: ISO
标准的年中的第几周
iyyy:ISO
标准的四位年份
yyyy:
四位年份
yyy,yy,y:
年份的最后三位,两位,一位
hh:
小时,按
12
小时计
hh24:
小时,按
24
小时计
mi:
分
ss:
秒
mm:
月
mon:
月份的简写
month:
月份的全名
w:
该月的第几个星期
ww:
年中的第几个星期
分享到:
相关推荐
是基于JAVA编程语言 以及 ORACLE数据库的软件开发 重要的是体现了三层架构的开发思想
https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html
此题库集合了大型系统维护开发的相关技术,希望对面试的兄弟们有所帮助。
java连接oracle数据库jar包
基于Java+oracle学生信息管理系统的设计与实现(含源文件).docx基于Java+oracle学生信息管理系统的设计与实现(含源文件).docx基于Java+oracle学生信息管理系统的设计与实现(含源文件).docx基于Java+oracle学生信息...
在oracle中处理日期大全 不熟悉Oracle中日期处理的可以学习一下哦!
Oracle中的日期处理总结Oracle中的日期处理总结Oracle中的日期处理总结Oracle中的日期处理总结Oracle中的日期处理总结Oracle中的日期处理总结
java 连接sql server/Oracle/Mysql等常用数据库方法,本人是经过测试整理的。有java odbc-jdbc桥接和jdbc直连两种方式。希望对家有帮助。
oracle日期处理完全版,提供几种日期处理方式,供大家参考。
C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Program Files (x86)\Java\jdk1.7.0_15\bin;D:\oracle\product\10.2.0\db_1\bin;D:\Python;C:\Program Files (x86)\Intel\iCLS Client\;C:
http://www.oracle.com/technetwork/java/javase/downloads/jce-7-download-432124.html JDK默认Policy只能支持位Key,GPG的密钥从1024-2048,所以必须扩展该Policy。具体安装方法参考文件中的ReadMe文件。
java 代码写的关于Oracle的 事务处理
oracle 11g for win32位下载地址:http://download.oracle.com/otn/nt/oracle11g/xe/OracleXE112_Win32.zip 适合Win7系统。 直接在迅雷或其它下载工具里新建任务,复制地址上去就可以下载了。本人已经下载成功!
java导出oracle数据(单表)
JAVA 连接oracle数据库工程 JAVA oracle数据库 Myeclipse
oracle对日期的处理全集,很全哦!希望会对大家有所帮助。
java实现oracle分页策略完整版,可当做参考类使用,有详细注释,适合初学者。
oracle日期处理函数以及常用的sql语句示例。
java调用oracle存储过程或者函数