PreparedStatement.SetDate

本文介绍如何在Java中将util.Date类型转换为sql.Date类型,并通过PreparedStatement正确地插入到数据库中。文章解决了在使用Java进行数据库操作时常见的日期类型不匹配的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

向数据库中插值

    java.text.SimpleDateFormat  df  = new  SimpleDateFormat("yyyy-MM-dd");  
    java.util.Date ud= df.parse("2008-12-17");
    java.sql.Date sd=new java.sql.Date(ud.getTime());

    pstm.setDate(1,sd);

 

 

 

 

 

今天做到数据库这部分,想通过使用预备语句插入日期部分,

一开始猜应该有PreparedStatement.setDate,就使用这个插入,而且我预选的值是java.util.Date

结果说类型不符合

后来,我改成PreparedStatement.setDate((java.sql.Date)date)强制转换,运行的时候还会出错,说转换不成功

唉....

后在在网上查到,可以通过下面的方式转换一下:

java.sql.Date sd;
java.util.Date ud;
//initialize the ud such as ud = new java.util.Date();

sd = new java.sql.Date(ud.getTime());

如果要插入到数据库并且相应的字段为Date类型
那么可以用PreparedStatement.setDate(int ,java.sql.Date)方法
其中的java.sql.Date可以用上面的方法得到

 

 

 

//按照指定的格式初始化Date

     java.text.SimpleDateFormat   df   =   new   SimpleDateFormat("yyyy-MM-dd");   
           

    java.util.Date ud= df.parse("2008-12-17");

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值