java 怎样获取java.sql.date 类型年月日并插入到数据库date类型中

Java中得到Java.sql.date类型只要年月日,插入到数据库中,数据库中为date类型... Java中得到Java.sql.date类型只要年月日,插入到数据库中,数据库中为date类型 展开
 我来答
Joel_Zimmerman
2017-09-22
知道答主
回答量:5
采纳率:0%
帮助的人:4214
展开全部
字段updateTime为Date类型,那么如果只要精确到年月日,那么就使用trunc(updateTime)即可,其他还有:
trunc[截断到最接近的日期,单位为天] ,返回的是日期类型
select sysdate S1,
trunc(sysdate) S2, //返回当前日期,无时分秒
trunc(sysdate,'year') YEAR, //返回当前年的1月1日,无时分秒
trunc(sysdate,'month') MONTH , //返回当前月的1日,无时分秒
trunc(sysdate,'day') DAY //返回当前星期的星期天,无时分秒
碌棵酚24
2013-05-11
知道答主
回答量:33
采纳率:0%
帮助的人:7.5万
展开全部
Date date = new Date(System.currentTimeMillis()); //System.currentTimeMillis()获取1970年开始的到现在的毫秒值
在你用格式化函数格式话一下SimpleDateFormat dimple = new SimpleDateFormat("yyyy-MM-dd ");
dimple.format(date) 把date格式化
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
草草QAQ
推荐于2017-11-25
知道答主
回答量:6
采纳率:0%
帮助的人:7.9万
展开全部
JDBC环境下
如果使用的是PreparedStatement接口:
String sql = "insert into 表名(date类型的列) values(?)";
PreparedStatement stmt = con.prepareStatement(sql);
stmt.setDate(1, date对象);
stmt.executeUpdate();

如果使用的是Statement接口:
java.text.SimpleDateFormat fmt1 = new java.text.SimpleDateFormat("yyyy-MM-dd"); // mssql、mysql格式
java.text.SimpleDateFormat fmt2 = new java.text.SimpleDateFormat("dd-MM月-yyyy"); // oracle格式

String sql = String.format("insert into 表名(date类型的列) values('%s')", fmt1.format(date对象));
Statement stmt = con.createStatement();
stmt.executeUpdate(sql);

使用Hibernate和mybaits的确就不用关心类型转换问题了~
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
erliang20088
2013-05-11 · TA获得超过2496个赞
知道小有建树答主
回答量:926
采纳率:100%
帮助的人:943万
展开全部
1、用hibernate就可以直接屏蔽掉这个问题,直接面向对象就可以了。

2、如果自己要用jdbc去操作的话,
我想起来可能行的两个方式(我都试过,我以前用jdbc都是直接插入int,string等):
(1)jdbc中的PreparedStatements中也是有相应的位置值的填充,好像是有一个直接插入一个date类型值的接口方法。
(2)插入一个跟数据中的date类型一致的字符串格式就可以了。如
yyyy-MM-dd hh:mm:ss等这样的样式。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式