Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Date в Sql-запросе для Query, Не получается выбрать данные  
V
    Опции темы
redlorik
Дата 26.3.2008, 23:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Господа! Просветите, пожалуйста! 
Исходные: есть таблица, в которой есть поле-string, тудысь заношу дату в формате dd.mm.gg. 
Задача: выбрать данные за период date1-date2. 
Написала условие: WHERE stat.num = inform.num AND cast(stat.Day as date)  between Form3.Edit1.Text and Form3.Edit2.Text. 
Ругается на Day. smile  Меняла в таблице формат поля на date. Пыталась сравнивать напрямую. Все равно выдает ошибку на Day. Что сделать?  smile 

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


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

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



Цитата(redlorik @ 26.3.2008,  23:33)
AND cast(stat.Day as date)  between Form3.Edit1.Text and Form3.Edit2.Text. 

А как дату с текстом сравнивать можно?


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
redlorik
Дата 26.3.2008, 23:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата

AND cast(stat.Day as date)  between Form3.Edit1.Text and Form3.Edit2.Text. 

 это мое последнее извращение... Я конечно не дату с текстом сравниваю... Я все привожу к формату даты и сравниваю, но я не могу понять почему она на поле таблицы ругается... Я его объявляю как дату а она при работе выдает ошибку на это поле.. 
PM MAIL   Вверх
Данкинг
Дата 27.3.2008, 00:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

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



Form3.Edit1.Text and Form3.Edit2.Text  к дате приводишь??


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
redlorik
Дата 27.3.2008, 00:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



да.
PM MAIL   Вверх
Данкинг
Дата 27.3.2008, 00:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

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



Попробуй cdate(stat.day).


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
redlorik
Дата 27.3.2008, 00:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Invalid use of keyword.Token: day) smile ... Может мне имя поменять?
PM MAIL   Вверх
Данкинг
Дата 27.3.2008, 00:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

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



А так вообще работает? У меня работает:

select all cdate(day) from table

И это работает:

select all day from table where  cdate(day)>cdate('15.10.2008')

Это сообщение отредактировал(а) Данкинг - 27.3.2008, 00:36


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
redlorik
Дата 27.3.2008, 00:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Если я правильно переписал для себя
select all cdate(stat.day1) from stat.db as stat

у меня выдала capability not supported
PM MAIL   Вверх
Данкинг
Дата 27.3.2008, 00:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

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



А Access какой? У меня-то 2000 - единственный нормальный в отличие от того глючного и неудобного в работе г-на, которое было после.

Ещё:

select all cdate(stat.day1) from stat.db as stat

после from должно имя таблицы идти, а у тебя что? И убери пока что "as stat", сиё только мешает.


Это сообщение отредактировал(а) Данкинг - 27.3.2008, 00:42


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
redlorik
Дата 27.3.2008, 01:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



у меня не Access... у меня Delphi... 
PM MAIL   Вверх
Данкинг
Дата 27.3.2008, 01:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

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



Цитата(redlorik @ 27.3.2008,  01:10)
у меня не Access... у меня Delphi...

А СУБД-то какая? Я почему-то подумал, что Access. Бывает. smile 


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
Beltar
Дата 27.3.2008, 08:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Изврат. Если есть формат Date его надо юзать.
Я обычно запрос в текстовом виде сначала проверяю в самой БД, а потом уже набираю в Delphi с поправками типа вместо дат параметры и т. п. мелочь. С датами формат может отличаться, я сам недавно с такой фигней столкнулся, пришлось вставлять в запрос времена в виде текста в формате yyyy.mm.dd


--------------------
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. smile(с) я, хотя может и нет
Пищущий на C++ мужик. Даже если это мужик сидит в написанном на Delphi и жрущем паскалевскую библиотеку билдере.
PM MAIL   Вверх
redlorik
Дата 27.3.2008, 21:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Спасибо за советы! Проблему решила в лоб. Запустила SQL Builder и записала запрос. Оказалось дело в кавычках!!! В книжках пишут про одинарные (то биш дату для сравнения нужно заключать в кавычки одинарные) а на деле оказалось двойные ест. Вот такая фи...
PM MAIL   Вверх
Данкинг
Дата 27.3.2008, 22:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

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



А СУБД-то какая всё же?


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


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

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


 




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


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

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