- 浏览: 1882704 次
- 性别:
- 来自: 合肥
文章分类
- 全部博客 (514)
- OPEN (41)
- WARN (33)
- EXPER (16)
- RESOURCE (7)
- TOOL (4)
- DWR (10)
- Struts1.x (10)
- Ibtais (18)
- MyEclipse (30)
- Sql Server (64)
- Tomcat (7)
- APACHE (4)
- JSP (18)
- SERVLET (6)
- ENGLISH (0)
- ECSide (8)
- JasperReports (7)
- JAVA (24)
- JS (42)
- XML (26)
- CVS (8)
- Mind (1)
- JQUERY (2)
- IBATIS (6)
- PROJECT (0)
- STRUTS2 (0)
- PROXOOL (0)
- SPRING (4)
- Hibernate (0)
- SSI (0)
- JBPM (11)
- FLEX (3)
- JSON (2)
- GWT (1)
- jeecms v3 (1)
- Flash (2)
- DATA (1)
- ORACLE (3)
- 查询oracle 中逗号分隔字符串中所有值 (1)
最新评论
-
小小西芹菜:
GoEasy web三步轻松实现web实时推送1. 引入goe ...
服务器推送技术 java -
kg_1997:
这个方法太棒了,可以不用to_date函数,实在是棒!!!
java/oracle日期处理 -
wodesunday:
:idea:
SQL的分段统计查询语句 -
wodesunday:
引用
SQL的分段统计查询语句 -
BlueSkator:
讲的有点浅,没有深入进去
tomcat需要的重新发布和重启服务器的几种情况
从sql server转移到oracle时间默认格式不存在,哎,晕死了!
后来看到csdn友博客,太好了,看看一个测试类吧!
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-200510: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),因为还要处理时间差问题。
方法二、使用java.sql.Timestamp,同上不使用new Timestamp(....)
方法三、使用oracle 的to_date内置函数
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:年中的第几个星期
后来看到csdn友博客,太好了,看看一个测试类吧!
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-200510: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:年中的第几个星期
发表评论
-
ORACLE中使用递归查询 (
2012-12-27 16:35 978在数据库查询中常常会碰到要查询树形结构的数据,需要用一个字段的 ... -
函数与存储过程区别
2011-06-01 18:17 1319本质上没区别。只是 ... -
SQL Server2000安装常见问题
2011-05-25 14:15 1494一:解决安装sql时文件挂起的问题: (1)、点击“开始》运 ... -
MySQL语句优化的原则
2011-04-12 14:21 9991、使用索引来更快 ... -
转SQL-group by学习
2011-04-12 14:18 1272在select 语句中可以使用group by 子句将行划分成 ... -
SQL Select语句完整的执行顺序:
2011-04-12 14:15 1401SQL Select语句完整的执行顺序: 1、from子句组 ... -
SQL截取字符串(substring与patindex的使用)
2011-03-31 13:55 5714SQL截取字符串(substring与patinde ... -
SQL Server2005杂谈(1):使用公用表表达式(CTE)简化嵌套SQL
2011-03-16 09:21 1315先看下面一个嵌套的查 ... -
SQL CHARINDEX (Transact-SQL)
2010-12-06 09:05 1480返回字符串中指定表达式的开始位置。 Transact-SQ ... -
SQL Server基本函数
2010-12-06 08:53 1611SQL Server基本函数 1.字符串函数 : ... -
SQL2005级联删除,层叠,设置空,设置默认值
2010-12-01 15:46 2450浅谈SQL SERVER 2005 之引用 ... -
sql 显示插入主键
2010-10-22 16:28 1309set identity_insert [T_ADMINTYP ... -
取小数
2010-10-22 16:12 1306使用这个方式来计算 SELECT convert(decima ... -
oracle 创建表空间
2010-10-12 11:28 1534一.创建表空间 CREATE SMALLFILE TABLES ... -
sql 约束大全
2010-09-27 16:28 1367--------添加主键约束(bookid作为主键) alt ... -
sql 主外键语法
2010-09-27 08:39 1741alter table dbo.t_commAtta ... -
在SQL Server中,关于with as使用介绍
2010-09-26 13:32 36092一.WITH AS的含义 ... -
procedure 存储过程多个返回测试
2010-09-01 10:26 1188create procedure test(@temp1 va ... -
sql 实现按月份,季度统计报表
2010-08-30 12:01 14971呵呵,我们在处理设计到日期统计时候经常会按照年度,季度,月份统 ... -
SQL Server DATEPART() 不能言
2010-08-30 11:29 1826今天做按月份,按年度,按季度统计报表,后来发现了最简单最可扩展 ...
相关推荐
5. **日期和时间API的改进**:Java 8提供了新的`java.time`包,替换原有的`java.util.Date`和`java.util.Calendar`,提供了更强大且易于使用的日期和时间API。 6. ** Nashorn JavaScript引擎**:Java 8引入了一个新...
在处理日期类型时,需要特别注意Java与Oracle之间的时间戳格式不一致可能导致的问题。 **示例代码:** ```java java.util.Date date = new java.util.Date(); PreparedStatement ps = conn.prepareStatement(...
同样的,处理日期时,可以创建一个方法生成Oracle的`to_date()`函数格式。 尽管`Statement`对象在某些场景下更便捷,但在大量重复执行相同SQL的环境下,`PreparedStatement`对象的预编译特性可以显著提高性能。预...
比如,Oracle使用`TO_DATE`函数处理日期,而SQL Server使用`CONVERT`。在更新Java代码中的SQL查询时,需要考虑这些差异。 5. **存储过程和函数**:如果应用使用了存储过程,需要将SQL Server的存储过程转换为Oracle...
在选择使用哪种Java日期类型时,如果数据库中的"Date"类型只需要日期,且业务逻辑不需要处理时间部分,那么可以考虑使用"java.sql.Date"。但如果可能涉及到时间信息,"java.util.Date"则是更好的选择,因为它提供了...
7. **国际化和本地化**:`java.text`和`java.util`包中的类支持不同地区的日期、时间、货币和数字格式,帮助开发者创建适应全球市场的应用程序。 8. **反射机制**:`java.lang.reflect`包提供了运行时检查和操作类...
总结起来,Oracle的Timestamp with Time Zone类型和Java的`ZonedDateTime`类是处理时区敏感日期时间的关键工具。在开发中,理解它们的工作原理,掌握如何在数据库和应用程序之间正确地转换和操作这些数据,对于构建...
【Java+Oracle企业人事管理系统详解】 企业人事管理系统是企业日常运营中的重要组成部分,它负责管理企业内部员工的信息、考勤、薪资、绩效等关键数据。本系统采用Java作为开发语言,Oracle作为数据库管理系统,...
### JAVA 连接 ORACLE 实现简单学生信息管理系统 #### 需求分析与系统概述 随着教育行业的信息化发展,学生信息管理系统变得越来越重要。它不仅帮助学校管理者、教师和学生更加有效地处理日常事务,还能确保信息的...
### Oracle公司 Java8 Java SE ...这些题目不仅检验了Java基础语法的掌握情况,还涵盖了面向对象设计原则、异常处理等多个方面,对于准备参加Oracle Java SE 8 Programmer I认证考试的开发者来说是非常重要的练习资源。
本文将详细介绍一个自定义的Oracle函数`FN_ISDATE_JAVA`,该函数用于判断给定的字符串是否能够转换为有效的日期格式。 #### 函数概述 函数`FN_ISDATE_JAVA`的主要功能是验证输入的字符串是否符合日期格式...
6. 在 Oracle 数据库中存在一张 test 表,记录年份、账户、flag、数据、时间等信息,使用 SQL 语句查询出年份从 2004 至 2009,并且标记为‘Y’的记录,这个问题考察了 Oracle 数据库的日期处理能力和 SQL 语句的...
默认情况下,英文版本的Oracle日期格式为`DD-MON-YY`,而中文版本则为`日-月-年`。在处理日期时,Oracle提供了两个关键的内置函数: - **TO_DATE()函数**:将字符串转换为日期。例如,如果有一个日期字符串`'08-21-...
在Oracle数据库中处理日期...总之,从Oracle数据库中提取日期并按照特定格式显示,涉及到数据库操作、编程语言中的日期处理机制以及业务需求的理解等多个层面,掌握这些技能对于提升数据处理效率和用户体验至关重要。
尽管它的原始界面是基于终端的,但Java版本的Oracle SQL Plus为用户提供了更现代、跨平台的体验。这个工具以其高效、易用和功能全面而受到广大数据库管理员和开发者的欢迎。 在Java版本的Oracle SQL Plus中,用户...
新的日期和时间API(java.time包)取代了过时的java.util.Date和Calendar,提供了更直观、更易于使用的日期和时间处理功能。 其次,JRE是JDK的一部分,它是运行Java应用程序所必需的环境。它包含了Java虚拟机,负责...
6. **日期与时间API**:`java.time`包替换原有的`java.util.Date`和`java.util.Calendar`,提供了更强大、更易于使用的日期和时间API。 7. **默认方法**:在接口中添加了默认方法,允许在不破坏向后兼容性的情况下...
Java Development Kit(JDK)是Oracle公司提供的用于开发和运行Java应用程序的重要工具包。它包含了Java编译器、Java虚拟机(JVM)、类库和其他必要的工具,使得开发者能够创建、测试和部署Java应用程序。标题“jdk-...
《Java项目:飞机订票系统(Java + Swing + Oracle)详解》 在信息技术领域,开发一个功能完善的飞机订票系统是提升效率和服务质量的重要手段。本项目以Java为编程语言,Swing作为图形用户界面(GUI)开发工具,...