java 获取oracle数据库中的系统时间~目的只是想从数据库取出系统时间 然后打印出来、新人求大虾们帮忙。。

java 获取oracle数据库中的系统时间~目的只是想从数据库取出系统时间 然后打印出来、新人求大虾们帮忙。。,第1张

public static final String DBUSER="scott"; 改成小写

public static final String DBPWD="tiger"; 改成小写

String sql="select sysdate from dual"; 去掉分号

main中只要写

new ConnectionJDBC();

就可以了

SELECT '当前时间' AS [精度], GETDATE() AS [结果]

UNION ALL

SELECT '精确到天' AS [精度], DATEADD(dd, DATEDIFF(dd, 0, GETDATE()), 0) AS [结果]

UNION ALL

SELECT '精确到小时' AS [精度], DATEADD(hh, DATEDIFF(hh, 0, GETDATE()), 0) AS [结果]

UNION ALL

SELECT '精确到分' AS [精度], DATEADD(mi, DATEDIFF(mi, 0, GETDATE()), 0) AS [结果]

精度 结果

---------- -----------------------

当前时间 2012-11-03 16:08:06597

精确到天 2012-11-03 00:00:00000

精确到小时 2012-11-03 16:00:00000

精确到分 2012-11-03 16:08:00000

(4 行受影响)

如果你在数据库中存储的系统时间格式是varchar2的话,就可以在Java程序里面直接生成一个时间,然后做一个截取,比如在程序里面写一个方法,在你插入的时候直接把这个字符串弄进去就行了如: public static String getDate() { javatextSimpleDateF

分两种情况,一种是创建表时自动创建带有默认值的字段,一种是把没有默认值的字段设置为有默认值的字段。

第一种情况:

create table test

(id int,

starttime date default sysdate not null );

插入测试数据:

insert into test (id) values (1);

commit;

验证结果:

第二种情况,比如在test表中加一个endtime,时间也要求是系统默认时间。

添加字段且不设置默认值:

alter table test add endtime date;

添加默认值语句

alter table test modify endtime default sysdate;

测试语句:

insert into test (id) values (2);

commit;

验证结果:

一 获取当前系统时间和日期并格式化输出:

import javautilDate;

import javatextSimpleDateFormat;

public class NowString {

public static void main(String[] args) {

SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式

Systemoutprintln(dfformat(new Date()));// new Date()为获取当前系统时间

}

}

二 在数据库里的日期只以年-月-日的方式输出,可以用下面两种方法:

1、用convert()转化函数:

String sqlst = "select convert(varchar(10),bookDate,126) as convertBookDate from roomBook where bookDate between '2007-4-10' and '2007-4-25'";

Systemoutprintln(rsgetString("convertBookDate"));

2、利用SimpleDateFormat类:

先要输入两个java包:

import javautilDate;

import javatextSimpleDateFormat;

然后:

定义日期格式:SimpleDateFormat sdf = new SimpleDateFormat(yy-MM-dd);

sql语句为:String sqlStr = "select bookDate from roomBook where bookDate between '2007-4-10' and '2007-4-25'";

输出:

Systemoutprintln(dfformat(rsgetDate("bookDate")));

首先说明两点:

1、javasqlDate是继承了javautilDate。

2、javautilDate可以在任意情况下使用,javasqlDate只针对SQL语句使用并且只包含日期而没有时间部分。

javasqlDate不好用,所以根本没必要使用javasqlDate,直接用javautilDate就行,一样可以跟数据库字段关联起来。

获取系统时间的三种方式:

1、new javautilDate()

2、CalendargetInstance()getTime()

3、直接在写sql的时候用now(),例如insert into t_user(id, name, createTime) values ('xx', 'xxx', now())

以上就是关于java 获取oracle数据库中的系统时间~目的只是想从数据库取出系统时间 然后打印出来、新人求大虾们帮忙。。全部的内容,包括:java 获取oracle数据库中的系统时间~目的只是想从数据库取出系统时间 然后打印出来、新人求大虾们帮忙。。、SQL 语法请教 如何获取系统时间、我用derby数据库,怎么用sql语句获得系统时间sql语句怎么写等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10178632.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存