сравнение по дате (access)

Работа VB и СУБД (Access, MSSQL, MySQL, Oracle и пр.)
Правила форума
При создании новой темы не забывайте указывать используемую СУБД.
Sirik
Perspicaz
Perspicaz
Аватара пользователя
 
Сообщения: 2280
Зарегистрирован: 19.02.2004 (Чт) 16:09
Откуда: Бердичев, Украина

сравнение по дате (access)

Сообщение Sirik » 18.01.2006 (Ср) 15:47

в таблице есть поле (тип Краткая дата: dd.mm.yyyy)

делаю выборку так: ask = ask & " AND [Date_Insert] => '" & Start_Date & "' AND [Date_Insert] <= '" & Finish_Date & "'"
, где Start_Date-начальная дата; Finish_Date-конечная дата

выдаёт ошибку: ошибка выражения

почему?

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 18.01.2006 (Ср) 15:53

Ыыыыыыыыыы...
Опять.....
Ну когда люди начнут читать мануалы, ну когдааааааа...... :cry:

" AND [Date_Insert] BETWEEN #yyyy/mm/dd# AND #yyyy/mm/dd#"
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Sirik
Perspicaz
Perspicaz
Аватара пользователя
 
Сообщения: 2280
Зарегистрирован: 19.02.2004 (Чт) 16:09
Откуда: Бердичев, Украина

Сообщение Sirik » 18.01.2006 (Ср) 15:56

вопрос 1: формат обязательно такой yyyy/mm/dd ?
вопрос 2: выборка будет произведена включена с данными датами или нет?

Konst_One
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
Аватара пользователя
 
Сообщения: 3041
Зарегистрирован: 09.04.2004 (Пт) 13:47
Откуда: Химки

Сообщение Konst_One » 18.01.2006 (Ср) 15:56

пока есть мы - никогда :lol:

Sirik
Perspicaz
Perspicaz
Аватара пользователя
 
Сообщения: 2280
Зарегистрирован: 19.02.2004 (Чт) 16:09
Откуда: Бердичев, Украина

Сообщение Sirik » 18.01.2006 (Ср) 16:02

второй вопрос снят

всё получилось, но как насчёт первого?

в преобразовании вопросов нет, за исключением одного: вдруг у кого-то из юзеров будут иные региональные настройки даты?

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 18.01.2006 (Ср) 16:02

Sirik писал(а):вопрос 1: формат обязательно такой yyyy/mm/dd ?

Какой формат в таблице - не важно, да его там и нет, собственно...
Такой формат в запросе для того, чтобы база не перепутала твой месяц с твоим днём, а то она может...
И вообще, весь подход неверен изначально, а верен только ADODB.Command и строгая типизация параметров...

Sirik писал(а):вопрос 2: выборка будет произведена включена с данными датами или нет?

Ну я же не заменил бы твои >= на BETWEEN, если бы они не совпадали...
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Sirik
Perspicaz
Perspicaz
Аватара пользователя
 
Сообщения: 2280
Зарегистрирован: 19.02.2004 (Чт) 16:09
Откуда: Бердичев, Украина

Сообщение Sirik » 18.01.2006 (Ср) 16:34

т.е. при любых региональных найстроках формат yyyy/mm/dd ?

Odrick
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 503
Зарегистрирован: 28.09.2003 (Вс) 2:04

Сообщение Odrick » 18.01.2006 (Ср) 16:45

А с форматами дат во всех базах данных к сожалению рога... Хорошее правило - скармливать дату БД в том виде, в котором она сама отдает ее "по умолчанию". Если есть возможность сделать выборку без промежуточного форматирования даты, то сделай и посмотри. По поводу региональных настроек - по идее пофигу. Хотя кто знает, что мелкомягким в голову стукнуло. Им вообще как правило плевать на международные стандарты. И ихнему SQL тоже...
То, что для одних константа, для других только переменная...

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 18.01.2006 (Ср) 17:53

Да, при любых настройках такой формат.

Но опять же, это изначально неправильно. Изначально правильно ADODB.Command.
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Sirik
Perspicaz
Perspicaz
Аватара пользователя
 
Сообщения: 2280
Зарегистрирован: 19.02.2004 (Чт) 16:09
Откуда: Бердичев, Украина

Сообщение Sirik » 19.01.2006 (Чт) 9:17

в принципе разобрался, всем спасибо


Вернуться в Базы данных

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0

    TopList