2012-05-16 5 views
0

Я пытаюсь запросить базу данных, используя поле даты. Но он возвращает нулевой набор. Поле даты в моей базе данных подобно 2012-05-16 00:00:00.Запрос по дате в базу данных mysql

String alDate = getStringParam(dataMap, "dt_" + i + j); 
Date startdate = new SimpleDateFormat("yyyy-MM-dd hh:MM:ss").parse(alDate); 

Где значение alDate - строка даты, поступающая с страницы JSP. Но когда я запрашиваю с «startdate», либо выдает ошибку, либо возвращает нулевой набор. Какие-либо предложения?

HOw Я знаю, существуют ли данные на определенную дату? Я нашел объект даты в спящих критериях для поиска. Он работает, но иногда он терпит неудачу.

+1

что запрос? должен ли i + j быть элементом, как в (i + j)? – CosminO

+0

Пожалуйста, укажите окружающий код, иначе любые ответы, которые вы действительно получите, будут неопределенными. – mcfinnigan

+0

mcfinnigan- отредактировал вопрос. query - это запрос на спящий режим. Он принимает начальную дату как параметр. –

ответ

0

SimpleDateFormat неправильно:

  • Капитал 'М' за месяц, немного 'м' в минуту.
  • Капитал 'H' Часовая

Например:

startdate=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss") 
+0

Но после разбора он показывает дату как «Среда 16 мая 00:00:00 GMT + 05: 30 2012». Таким образом, мой запрос не выполнен должным образом. –

+0

Использование @Cyphon ** SimpleDateFormat # parse (String) ** для преобразования String -> Date и ** SimpleDateFormat # format (Date) ** для преобразования Date -> String. * «Среда 16 мая 00:00:00 GMT + 05: 30 2012» * - это выход из ** Дата # toString() **, поэтому вам нужно будет преобразовать дату в String с использованием формата ** (Дата) **. – klonq

+0

но я хочу его как дату. Потому что мне нужно запросить использование объекта типа даты, а не типа строки. –

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