当前位置:  技术问答>java相关

如何将日期和时间同时存入数据库(在sql server用PreparedStatement)中?

    来源: 互联网  发布时间:2015-06-20

    本文导语:  在PreparedStatement只有setDate和setTime,如何将date和time都存进去呢? //date 是比如 java.util.Date date = new java.util.Date(); //或者是date从别的地方生成的。 psmt.setDate(i, new java.sql.Date(date.getTime())) ; 这样的没有时间阿,...

在PreparedStatement只有setDate和setTime,如何将date和time都存进去呢?
//date 是比如 java.util.Date date = new java.util.Date();
//或者是date从别的地方生成的。
psmt.setDate(i, new java.sql.Date(date.getTime())) ;
这样的没有时间阿,是2002-6-11;
而psmt.setTime(i++,new java.sql.Time(date.getTime()));
这样是1900-1-1 16:36:44。

|
如果你使用的数据库是SQL Server的话,是没有Time和Date类型的,都统一用TimeStamp来表示(因为SQL Server并没有区分这两个类型),取出的时候取其中的日期或是时间就可以了。

存储的时候都是用psmt.setTimestamp()方法,你可以new Timestamp(System.currentTimeMillis())就可以把当然日期和时间写到数据库了。你也可以用Timestamp构造Date,具体方法可以查doc。

我以前做的都是用Timestamp来表示,没有一点问题,而且也很合理。

|
sql server里面有个数据类型Datetime存放的就是日期+时间的格式,比如:
1900-1-1 16:36:44.000
如果要将1900-1-1 16:36:44存入数据库中(即上面的Datetime字段),可以通过转换生成对应的Date数据就行。
插入数据库的数据必须是java.sql.Date类型的日期,所以你可以通过类似你上面的处理将字符串转成java.sql.Date类型的日期再存入数据库就成。
下面给你一个将字符串1900-1-1 16:36:44改变成一个java.sql.Date类型的一个class。
import java.text.*;
import java.util.Locale;
public class StringToDate {
  public final static java.sql.Date string2Date(String dateString)
  throws java.lang.Exception {
    DateFormat dateFormat;
    dateFormat = new SimpleDateFormat("yyyy-MM-dd kk:mm:ss", Locale.ENGLISH);
    dateFormat.setLenient(false);
    java.util.Date timeDate = dateFormat.parse(dateString);//util类型
    java.sql.Date dateTime = new java.sql.Date(timeDate.getTime());//sql类型
    return dateTime;
  }
}

|
Calendar cc = new GregorianCalendar();
 psmt.setTimestamp(6,new Timestamp(cc.getTime().getTime()),cc);
你也可以用
ps.setTime(...);来实现。

|
to shine_car 

我建议分开存,这样的话数据库的移植性好好一些。

|
.......
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd kk:mm:ss");
        java.util.Date now = new java.util.Date();
        String resultDate = sdf.format(now);
        java.util.Date last = new java.util.Date(resultDate);
.....
psmt.setDate(i, new java.sql.Date(last)) ;

    
 
 

您可能感兴趣的文章:

 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 如何将数据库中的日期型字段中的时间和日期同时取出来放到Date型变量中?
  • Python将日期时间按照格式转换成字符串
  • 按日期选择最晚日期与最早日期对应的数的差值
  • ORACLE日期相关操作
  • 如何在sh文件中得到当前日期前一个月(30天)的日期?
  • * kangaroo(名草),用Javascript真的能做像Delphi的日期控件那样的日期选择器吗?
  • 请教给问题,给分哦!shell 中输入一个日期参数,得到该日期的星期。
  • 这样的日期格式"2002-09-08",能否被Calendar类直接使用,从而得到这个特定日期的一些信息??
  • 基础问题,刚学的!请教,两个日期格式变量,我要求两个日期之间的天数,怎么求?
  • jquery实现在页面加载的时自动为日期插件添加当前日期
  • 急!有两个char buf[]里面是两个日期(2004-08-02),怎样判断两个日期之间的天数?(只能用标准C)
  • php 获取某日期的前一天日期
  • 如何取得本周的日期,包括明天的日期?
  • 如何将java.util.Date类型的日期转换成java.sql.Date类型的日期?
  • JQuery EasyUI 日期控件如何控制日期选择区间
  • php iis7站长之家
  • c#的时间日期操作示例分享(c#获取当前日期)
  • 笨问题----已知今天日期,怎样得到明天日期?
  • 请教点击开始-->搜索-->文件和文件夹-->搜索选项-->日期-->介于选择日期的那个框怎么实现的??
  • FTP上创建的文件夹的创建日期始终和本机的对不上(无论如何改变日期和时间)(紧急!!!)
  • php计算日期相差天数(日期计算)代码
  • sql server日期相减 的实现详解


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3