2015-05-03 8 views
-1

Я хочу вставить следующее в базу данных в формате даты в формате sql.Как преобразовать строку даты в формат даты sql

Sat May 02 19:01:30 PDT 2015 

Вот мой код:

Calendar calendar = Calendar.getInstance(Locale.US); 
Date formattedDate = calendar.getTime(); 
Date = formattedDate.toString(); 
javaSqlDate = new java.sql.Date(calendar.getTime().getTime()); 

Я вставив значение, как показано ниже:

ps.setTimestamp(7, javaSqlDate); 
+3

Так в чем проблема? Получаете ли вы сообщение об ошибке, или дата неверна? – vesan

+0

Если вы вставляете «TimeStamp» (а столбец «TimeStamp»), то проблем не должно быть, формат не имеет значения, поскольку драйвер и база данных будут определять, что они хотят, и выполнять сами переводы. Время/дата не соответствуют формату, это всего лишь время, прошедшее с момента таймера привязки (например, Unix Epoch) – MadProgrammer

ответ

0

Попробуйте это:

public class MainClass { 

    public static void main(String[] args) { 
    java.util.Date utilDate = new java.util.Date(); 
    java.sql.Date sqlDate = new java.sql.Date(utilDate.getTime()); 
    System.out.println("utilDate:" + utilDate); 
    System.out.println("sqlDate:" + sqlDate); 

    } 

} 
0

Для вставки метки, которая соответствует текущее системное время JVM, вы можете подразумевают следующее:

ps.setTimestamp(7, new java.sql.Timestamp(System.currentTimeMillis())); 
Смежные вопросы