2013-05-01 4 views
0

Я заметил ошибку, как показано ниже.
Существует таблица в mssql с полем datetime. В приложении java я попытался получить информацию ниже.неверно Прочитать MSSQL DateTime из java

sqlCmd = "select top 5 convert(Date,creation_date) xdate from outbound_messages"; 
s.executeQuery(sqlCmd); 
rs = s.getResultSet(); 
while (rs.next()) { 
    String xdate = rs.getDate("xdate").toString() 
} 

Если я бегу под JDK 1.7.0_03 я буду получать неверную дату (2 дня назад), но работает хорошо под v6 !!!
Я использую «sqljdbc4.jar» как sql lib.
Если инструкция sql изменена на c "convert (char (10), creation_date, 121)" работает хорошо.
Любые предложения!

ответ

0

Вы можете сохранить временную метку date.getTime() в своей базе данных как долгое время и проанализировать ее в объекте Date при извлечении данных из вашей базы данных, я думаю, это может решить вашу проблему.

+0

Спасибо Romain, но неверно, поле содержит полную дату и время, и когда я получаю его как источник, он возвращает дату, как за два дня до этого! –

Смежные вопросы