сравнить дату в выписке sql - PullRequest
0 голосов
/ 13 октября 2011

Я создаю инструмент оповещения, используя веб-интерфейс.

Я хочу выбрать все события, которые происходят в определенный день.когда я вставляю событие, я вставляю дату как объект даты с этим форматом «2011-10-14», Что я должен написать в операторе выбора, чтобы выбрать все события, которые происходят сегодня?

Я делаю вот так

 cur =new Date();
alert(cur);
db.transaction(function(tx){
    tx.executeSql("select NOTE_DESC,NOTE_DATE,NOTE_TIME,ALERT_TIME,NOTES_MORE_DETAILS from NOTES where NOTE_DATE = "+cur+" order by NOTE_TIME asc limit 0,1",[], alert("yes"),onError);
});

В котором мой запрос:

select NOTE_DESC, NOTE_DATE, NOTE_TIME, ALERT_TIME, NOTES_MORE_DETAILS 
from NOTES 
where NOTE_DATE = "+cur+" 
order by NOTE_TIME asc 
limit 0,1

, но появляется сообщение об ошибке "около октября: синтаксическая ошибка"

Какя должен сделать сравнение дат в sql ??

1 Ответ

1 голос
/ 13 октября 2011

Полагаю, вы хотите:

NOTE_DATE = '"+cur.getFullYear()+'-'+(cur.getMonth()+1)+'-'+cur.getDate()+"'

Обратите внимание на ', заключающий значение в переменную запроса, и вызов метода cur объекта даты для построения даты.http://jsfiddle.net/yXgDw/

Еще лучше, используйте подготовленный запрос:

http://www.w3.org/TR/webdatabase/#dom-sqltransaction-executesql

http://www.w3.org/TR/webdatabase/#introduction

...