Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Аксес - траблы с Select 
:(
    Опции темы
nankko
Дата 22.8.2007, 15:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 76
Регистрация: 8.2.2007

Репутация: нет
Всего: нет



есть таблица - в ней поле Date
- селектирую
Код

SELECT * FROM WHERE [Date] BETWEEN '2007-8-20' AND '2007-8-22'

получаю в ответ
data type mismatch in criteria expression

друрие запросы проходят нормально,вся фишка в дате((( почему такой формат даты - спер его из sql пытался сначала 20.08.2007 не прошло. как рпавильно оформить? заранее спасибо)
PM MAIL   Вверх
Idsa
Дата 22.8.2007, 15:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2086
Регистрация: 5.12.2006
Где: Томск

Репутация: 15
Всего: 62



Цитата(nankko @  22.8.2007,  15:23 Найти цитируемый пост)
как рпавильно оформить?

Правильно - хранить дату в виде числа. Для этого есть специальные методы. В С# это DateTime.ToBinary, который возвращает 64-битное значение, которое укладывается в БД-шный bigint (не знаю, есть ли такой тип в Access). Тогда запросы выполняются гораздо быстрее, да и проблем никаких не возникает.
Если же не хочется ничего менять... то измени формат даты: Access понимает вот такой формат: 15/05/1999 00:00:00.


--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
nankko
Дата 22.8.2007, 16:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 76
Регистрация: 8.2.2007

Репутация: нет
Всего: нет



менять ничего не хочется,т.к. в аксесе есть спец тип дата
+ его формат именно 15/05/1999 00:00:00 !
Запрос вида
    
SELECT * FROM WHERE [Date] BETWEEN '20/08/2007' AND '22/08/2007' 

изменений не дал.ошибка та же.

PM MAIL   Вверх
Idsa
Дата 22.8.2007, 16:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2086
Регистрация: 5.12.2006
Где: Томск

Репутация: 15
Всего: 62



Цитата(nankko @  22.8.2007,  16:09 Найти цитируемый пост)
его формат именно 15/05/1999 00:00:00

Цитата(nankko @  22.8.2007,  16:09 Найти цитируемый пост)
SELECT * FROM WHERE [Date] BETWEEN '20/08/2007' AND '22/08/2007' 

Не чувствуешь несоответствие формату? Попробуй вот так:
Код

SELECT * FROM WHERE [Date] BETWEEN '20/08/2007 00:00:00' AND '22/08/2007 23:59:59'


Это сообщение отредактировал(а) Idsa - 22.8.2007, 17:12


--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
nankko
Дата 22.8.2007, 17:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 76
Регистрация: 8.2.2007

Репутация: нет
Всего: нет



да и так не помогло.хз почему.перепробовал все варианты.потом плюнул и стал передавать через DateTime.Parse() 

хранить в Binary дело - не спорю,просто наткнулся,смотрю не пашет,стал думать,обойти можно было,но неинтересно - хотя всеравно сдался)))

но спс за потраченное время)
PM MAIL   Вверх
thomas
Дата 22.8.2007, 21:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доцент... почти
***


Профиль
Группа: Завсегдатай
Сообщений: 1385
Регистрация: 3.10.2006
Где: " Сказочное королевство"

Репутация: 35
Всего: 65



nankko
месяц первым поставь.   (MM/dd/yyyy)


--------------------
Крепко жму горло, искренне ваш Thomas. (С)vingrad
Некоторые сорта флоры буквально за одно мгновение превращают нас в фауну!
Проблемы негров шерифа не волнуют.
PM MAIL   Вверх
nankko
Дата 22.8.2007, 23:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 76
Регистрация: 8.2.2007

Репутация: нет
Всего: нет



Тоже самое( 
PM MAIL   Вверх
Arvest
Дата 16.9.2007, 14:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 13.6.2007

Репутация: нет
Всего: нет



А если так:
Код

SELECT * FROM WHERE [Date] BETWEEN #20.08.2007# AND #22.08.2007#
 
PM MAIL   Вверх
thomas
Дата 16.9.2007, 15:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доцент... почти
***


Профиль
Группа: Завсегдатай
Сообщений: 1385
Регистрация: 3.10.2006
Где: " Сказочное королевство"

Репутация: 35
Всего: 65



Arvest
Скорее всего нужно так, как ты и посоветовал но с "/"
Код

SELECT * FROM tableName WHERE [Date] BETWEEN #08/20/2007# AND #08/22/2007#;




--------------------
Крепко жму горло, искренне ваш Thomas. (С)vingrad
Некоторые сорта флоры буквально за одно мгновение превращают нас в фауну!
Проблемы негров шерифа не волнуют.
PM MAIL   Вверх
zaver
Дата 16.9.2007, 17:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 204
Регистрация: 15.8.2005

Репутация: нет
Всего: 3



посмотри тут:
проблема форматов даты в Аксессе-to_date в Аксессе
PM MAIL WWW ICQ Skype YIM MSN   Вверх
Arvest
Дата 16.9.2007, 19:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 13.6.2007

Репутация: нет
Всего: нет



thomas
ИМХО не суть важно.
Я меня стоит Access русский, в ригиональных настройках краткая дата "01.01.2007"
Если в запросе пишу дату как #08/20/2007#, то все равно в конструкторе Access ее отображает как #20.08.2007#

Из хелпа:
Цитата

Следует помнить, что в Access всегда используются разделители даты и времени, финансовые символы и другие знаки, указанные в региональных стандартах, если не был выбран пользовательский формат отображения. 

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
stab
mr.DUDA
Exception

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, stab, mr.DUDA, Exception.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Базы данных под .NET | Следующая тема »


 




[ Время генерации скрипта: 0.1055 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.