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

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

Имя поля "Date". [D6, dBase, FoxPro]


RDen ©   (2005-12-22 12:53:00) 

Здравствуйте. Пришлось делать некоторые запросы с некой таблицей *.dbf. В ней определено поле с именем "Date". Поэтому запрос типа 'where DATE >= 01.10.1998' не выполняется. Можно ли как-то это обойти (без изменения имя поля)?


RDen   (2005-12-23 08:07:00) [1]

ЮЮ ©   (23.12.05 08:02) [12]

нееееее, полностью он далеко не так выглядит :))


ЮЮ   (2005-12-23 08:02:00) [2]

>ну накнец-то
Вот именно, наконец-то мы увидели запрос полностью :)


RDen   (2005-12-23 07:48:00) [3]

> ЮЮ ©   (23.12.05 07:24) [10]

ну накнец-то, большое спасибо!


ЮЮ   (2005-12-23 07:24:00) [4]

Where "C:\Base\Message".Date
где такому синтаксису учат ?

Select * from "C:\Base\Message.dbf" msg
Where msg."Date" >= ...


RDen   (2005-12-23 07:16:00) [5]

> ЮЮ ©   (23.12.05 03:13) [7]
ну я так, для упрощения, вообще так у меня:
'Where Date >= ' + '"' + DateEdit1.Text + '"'

> ASoft   (23.12.05 05:18) [8]
спасибо, попробовал, но ошибка та-же - на имя поля :(
Query1.SQL.Add('Select * from "' + 'C:\Base\Message'+ '"' + 'Where "' + 'C:\Base\Message' + '"' + '.Date >= ' + '"' + DateEdit1.Text + '"');


ASoft   (2005-12-23 05:18:00) [6]

Однажды я столкнулся с аналогичным названием поля в БД и мне в обяз надо было сделать запрос по нему. Помог такой синтаксис:
SELECT * from <база данных> WHERE базаданных."date"... и т.д. В данном случае "базаданных" - это название БД, а не псевдоним.


ЮЮ   (2005-12-23 03:13:00) [7]

>Поэтому запрос типа 'where DATE >= 01.10.1998' не выполняется

Он не выполняется и потому, что дату в запросе так не пишут


Johnmen   (2005-12-22 13:32:00) [8]

[Date]


evvcom   (2005-12-22 13:30:00) [9]


> кстати, лучше использовать алиасы
> select t.* from tabl t
> where t."date" < :param

Параметры что ль имелись ввиду? Алиасом вообще-то нечто другое принято называть.


Anatoly Podgoretsky   (2005-12-22 13:15:00) [10]

Запрос наверно неправильный


RDen   (2005-12-22 13:13:00) [11]

> Курдль ©   (22.12.05 13:02) [1]

спасибо, не помогло, а БД создаваласть не известно кем и когда :(


Desdechado   (2005-12-22 13:07:00) [12]

Курдль ©   (22.12.05 13:02) [1]
иногда бывает "тяжелое наследство"

кстати, лучше использовать алиасы
select t.* from tabl t
where t."date" < :param


Курдль   (2005-12-22 13:02:00) [13]

where "DATE" ...

Может помочь, но перед созданием БД нехило бы почтиать не то, чтобы книгу, а хоть открыточку про нее (или комикс на худой конец). Наверняка где-то промелькнет совет не обзывать поля зарезервированными словами...


Наверх

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