Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

ADOQuery + SQL-выборка по дате!!! [D7, MS Access]


Страницы:   1 2 3

Kukulkan ©   (2010-04-17 23:43:00) 

Не мог понять в чём проблема!!!

Есть таблица из базы данных которая создана в Аксесе, из которой нужно получать даный по дате! Поле ДАТА храниться в формате ДД.ММ.РРРР
Вот код который я использую в Делфи:

procedure TAReview.Button5Click(Sender: TObject);
var
i :TDateTime;
begin
i := strtodate(edit4.text);

datamodule2.DataQuery.Active := false;
datamodule2.DataQuery.SQL.Clear;
datamodule2.DataQuery.SQL.Add('sele ct *');
datamodule2.DataQuery.SQL.Add('from аренда');
datamodule2.DataQuery.SQL.Add('wher e дата = '' + i +''');
datamodule2.DataQuery.Active := true;

end;

Врезультате введьоной в поле даты я получаю сообщение
Несоотвествие типов данных в условии отбора!!!

Пробывал вот просто в аксесе на sql зделать:
select *
from аренда
where дата = '23.03.2010'
Таже ошибка!!!
Я просто в не понятии что же такое!!! Помогите пожалуйста!!! Очень нужно!!! Заранее огромное спасибо!!!


turbouser   (2010-04-18 01:57:00) [21]


> Kukulkan   (18.04.10 01:41) [21]
>
> А что "сверх умы" скажут

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


turbouser   (2010-04-18 01:49:00) [22]


> Kukulkan   (18.04.10 01:39) [20]


> Ага!!! Может мне ещё в первый клас вернуться!!!????

Типичный ламер. Ну надо же. Прям по всем признакам.


Kukulkan   (2010-04-18 01:41:00) [23]

А что "сверх умы" скажут на это сообщение которое я получил в ответ на такую же тему на одном форуме:


формат даты разный...
у вас 23.03.2010, а акцесс хочет видеть 23/03/2010
как решение попробуй
Код:

DateSeparator := '/';


????


Kukulkan   (2010-04-18 01:39:00) [24]

Удалено модератором


Kukulkan   (2010-04-18 01:36:00) [25]


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


если б написали раз нормально я б и понял сразу!!! А то я одно спрашиваю а мне другое говорят!!! Я понимаю что то что мы видим  в таблицах на экране в физичеськом виде внутри базы данных может выглядеть подругом!!! Но я то не обэтом справшивал!!! Я же ясно изложил суть проблемы каторая у меня возникла!!! Потомучто при работе с моей базой, её таблицами проблем не было!! Выборка как по текстовым так и по числовым полям нормально работала!! А из полем Дата возникла така я вот ситуация!!! Непонимаю вас!!! Я спросил то и то а мне в ответ со всём другое!!! Я же вроде бы понятно написал поле то у меня емеет тип данных Дата, тоесть оно не евляеться текстовым!!! Разве я неправильно излагаю суть проблемы?!


Германн   (2010-04-18 01:25:00) [26]


>
> Да я это понимаю!!! Так кто нить посоветует что мне делать!
> !!???

Во-первых
> основной смысл в том, что надо использовать параметры
.
Во-вторых книжки читать.


sniknik   (2010-04-18 01:22:00) [27]

+ формата ни у простого ни у "сложных" случаев нет, он есть только у представления числа в строке (для отображения. в основном).


sniknik   (2010-04-18 01:20:00) [28]

> Так кто нить посоветует что мне делать!!!???
мантру на ночь "дата = число", "дата = число". повторять по 200 раз пока не дойдет.
когда "укорениться" можно поговорить о более сложных случаях когда дата не совсем число, а например рекорд.


Kukulkan   (2010-04-18 01:16:00) [29]

Удалено модератором


turbouser   (2010-04-18 01:11:00) [30]


> Kukulkan   (18.04.10 01:08) [12]

Мда..


turbouser   (2010-04-18 01:10:00) [31]


> sniknik ©   (18.04.10 01:04) [10]


> толку то. до него то до сих пор ничего не дошло...

Быть может, дойдет.. Хотя..


Kukulkan   (2010-04-18 01:08:00) [32]


> вещи не совместимые, либо дата, либо строка в формате ..
> . физическое хранение и форма визуального представления
> - разные вещи.

Да я это понимаю!!! Так кто нить посоветует что мне делать!!!???


Германн   (2010-04-18 01:06:00) [33]


> > Не сломался еще мой телепатор :))
> толку то. до него то до сих пор ничего не дошло...

Зато turbouser © успокоился. А то
> суббота.. вечер.. :)


sniknik   (2010-04-18 01:04:00) [34]

> Причём поле имеет тип данных не текстовой а именно даты!!!
вещи не совместимые, либо дата, либо строка в формате ... физическое хранение и форма визуального представления - разные вещи.

> Не сломался еще мой телепатор :))
толку то. до него то до сих пор ничего не дошло...


turbouser   (2010-04-18 00:50:00) [35]


> Anatoly Podgoretsky ©   (18.04.10 00:24) [5]

Не сломался еще мой телепатор :))


Kukulkan   (2010-04-18 00:39:00) [36]


> Anatoly Podgoretsky ©   (18.04.10 00:24) [5]
>
> > Kukulkan  (17.04.2010 23:43:00)  [0]
>
> Надо переделать таблицу, дату надо сделать в формате даты,
>  а не "ДД.ММ.РРРР"
> Иначе горя хлебнете гораздо больше.


Этим "ДД.ММ.РРРР" я имелл ввиду что у базе в  поле дата уменя храниться как 15.12.2010 например а при запросе выдаёт ошибку которою я описал выше!!! На одном форуме мне ответили что аксес требует такой формат 15/12/2010! Я попробовал - запросо заработал!!! Тока вот проблемка - у меня то дата храниться в таком вот формате 15.12.2010! Причём поле имеет тип данных не текстовой а именно даты!!! Так что хоть запрос и заработал то естественно что при таком запросе вот:

select *
from аренда
where дата = 23/03/2010


Я в ответ неполучу никаких даных изза того что у меня даное поле хранит дату в формате 15.12.2010!!! Что же делать мне посоветуете!? Изменить формат хранения даты в таблице?!


turbouser   (2010-04-18 00:35:00) [37]


> Anatoly Podgoretsky ©   (18.04.10 00:24) [5]


> Надо переделать таблицу

Это почему? У автора просто поле с датой, не строковое.. В соответствии с локалью видит  
> ДАТА храниться в формате ДД.ММ.РРРР

(вместо РРРР - YYYY, очепятка, как подсказывает телепатор) и всех делов..


Kukulkan   (2010-04-18 00:33:00) [38]

спосибо))))


Anatoly Podgoretsky   (2010-04-18 00:24:00) [39]

> Kukulkan  (17.04.2010 23:43:00)  [0]

Надо переделать таблицу, дату надо сделать в формате даты, а не "ДД.ММ.РРРР"
Иначе горя хлебнете гораздо больше.


turbouser   (2010-04-18 00:01:00) [40]


> Kukulkan   (17.04.10 23:43)  

а, и еще.. звездочки в запросе низя ставить.. выбирай то, что надо.


Страницы:   1 2 3

Наверх

Титульная страница Поиск, карта сайта Написать письмо