通过JDBC向oracle数据库中插入时间类型时间时,可以直接向数据库中插入java.sql.Date类型的时间,但是时间只包含年月日,没有时分秒。如果需要通过JDBC向oracle中插入java.util.Date类型的时间,先将Date转换成格式化字符串,再进行插入。(如果使用java.sql.timestamp 和 oracle 中的timestamp 则可以直接存取 并包含时分秒 )

向数据库中插入格式化日期sql语句如下:

insert into tab_demo values (to_date(格式化日期,'yyyy-mm-dd hh24:mi:ss'));

模版中的特殊字符的含义

yyyy:四位年

MM :月 (英文环境下 显示月份单词前三个字母)

dd :日

hh :12小时制

hh24:24小时制

mi :分钟

ss :秒

特殊:

day : 星期

month:月(英文环境下,显示月份整个单词)

am: 12小时制 ,

中文显示: 上午/下午

英文显示: am / pm

通过jdbc插入java.util.date类型的时间代码片段如下:

Date date = new java.util.Date();//获取当前时间对象,也可以直接传入Date的对象

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

String formatdate = sdf.format(date);//获取格式化日期,带有时分秒

String sql ="insert into tab_demo values (to_date(?,'yyyy-mm-dd hh24:mi:ss'))";//带参数的sql语句

Connection conn =  DButil.getConnection();

PreparedStatement state = conn.prepareStatement(sql);

state.setString(1, formatdate);//向预编译的对象中传入格式化时间

state.executeUpdate();//执行DML操作

以上操作均未处理异常。查询操作时亦同理。

更多推荐

Oracle--Oracle数据库中插入日期,日期带有时分秒(java.util.Date类型)