转换日期的字符串java.sql.Date格式
我有一个问题,而试图用Java插入日期到SQL服务器:转换日期的字符串java.sql.Date格式
//final String input = "20120823151034";
final String input = "06282013143533";
final DateFormat df = new SimpleDateFormat("MMddyyyyHHmmss");
final Calendar c = Calendar.getInstance();
c.setTime(df.parse(input));
//c.add(Calendar.MILLISECOND, 1);
String s=df.format(c.getTime());
java.util.Date parsedUtilDate = df.parse(s);
java.sql.Date sqltDate= new java.sql.Date(parsedUtilDate.getTime());
System.out.println(sqltDate);
在这里,我期待整个字符串以年,月,日,小时,分钟和秒的形式输出到SQL服务器中,但我只能得到年份,月份和日期。我应该如何将日期和时间插入数据库?
检查您的数据类型在数据库或者它应该是为这个目的,你可以使用数据库功能NOW()
为当前日期和time.and您的日期转换成时间戳
Timestamp timestamp = new Timestamp(new Date().getTime());
和插入此timestamp
到Timestamp
或Datetime
数据库
是的,它是日期时间在db? – user2335416
可否请你告诉我如何得到它,它不适用于当前的日期和时间,它应该适用于以前的日期也 – user2335416
将日期字符串转换为日期,然后将其转换为日期,然后插入它的时间戳。 –
java.sql.Date
可用于仅存储月份的年份,月份和日期。它不能用于存储一天的时间。为了存储时间,您将不得不使用Timestamp
。在你上面的代码,取代
java.sql.Date sqltDate= new java.sql.Date(parsedUtilDate.getTime());
通过
java.sql.Timestamp timestamp = new java.sql.Timestamp(parsedUtilDate.getTime());
上述变化将会使事情做工精细。
你为什么要转换字符串 - >日历 - >字符串 - >日期 - > ....什么是重点?也做c.setTime(df.parse(input));在做出最终决定之后工作? –
这里的要求是我将与06282013143533给予一个日期,我必须将其插入到sqlserver数据库,所以iam试图将日期转换为SQL Server兼容! – user2335416