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

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

тип поля DATE [D7, dBase, FoxPro]


Страницы:   1 2

Peter_cc ©   (2005-05-20 09:04:00) 

Здравствуйте мастера

Использую таблицу dbf(dBASE Files). Есть поле MDATE соответственно я ставлю тип поля DATE.
Пишу запросик простенький select * from tabl1 where MDATE=’21.01.2005’ во время выполнения запроса вылетает ошибка «несоответствия типов данных в выражениях  условиях отбора»

Если сделать полю другой тип ну допустим CHARACTER то ошибка не возникает…
Подскажите почему так происходит
Заранее благодарен.


lexer   (2005-05-20 10:42:00) [21]

>Peter_cc
а в базе в каком формате дата хранится?


msguns   (2005-05-20 10:41:00) [22]

Очепятки, емть..
AsDateT ime, конюшно !

;(


msguns   (2005-05-20 10:40:00) [23]

Пример параметрического запроса

with Query1 do
 try
  if Active then Close;
  SQL.Clear;
  SQL.Add('SELECT * FROM TABLE ');
  SQL.Add('  WHERE (STOCKDATA BETWEEN :ds AND :de) AND ');
  SQL.Add('        (CLIENTNAME=:cname )';
  SQL.Add(' ORDER BY STOCKDATE, STOCKNUM');
  ParamByName(ds).AsDateTame := dtPicker1.Date;
  ParamByName(de).AsDateTame := dtPicker2.Date;
  ParamByName(cname).AsString := 'Тексейра и Пачеко';
  Open;  
 except
  ShowMessage('Негаразды, емть !');
 end;


Peter_cc   (2005-05-20 10:38:00) [24]

у
> Max Zyuzin ©   (20.05.05 10:26) [11]
> >Peter_cc   (20.05.05 10:23) [10]
> Там на самом деле менять ничего не следует, там следует
> посмотреть в каком формате у тебя дата и пр... А программу
> надо делать так что бы она от этого не зависела, для это
> используют параметры. см. выше

посмотрел дата у меня как и у всех dd.mm.yyyy и чего??? а использовать параментры не могли бы вы написать пример я хоть знал бы от чего отталкиваться


Max Zyuzin   (2005-05-20 10:26:00) [25]

>Peter_cc   (20.05.05 10:23) [10]
Там на самом деле менять ничего не следует, там следует посмотреть в каком формате у тебя дата и пр... А программу надо делать так что бы она от этого не зависела, для это используют параметры. см. выше


Peter_cc   (2005-05-20 10:23:00) [26]


> evvcom ©   (20.05.05 09:55) [9]
>
> > но что значит региональные настройки где это
>
> Нажми на кнопку "Start" (Пуск) > Settings > Control Panel
> (Панель управления), там Regional Options (Региональные
> настройки) > Закладка Date (Дата). И экспериментируй. А
> еще лучше купи книжку типа "Windows для чайников" или чего-нибудь
> немного попродвинутей и поизучай, прежде чем задавать подобные
> вопросы.

блин я думал регеональные настройки это в делфи что то...и называется они не региональные настройки а язык и региональные стандарты.... и что мне там экспериментировать???? в дате . на \ менять??? тольку?!


evvcom   (2005-05-20 09:55:00) [27]


> но что значит региональные настройки где это

Нажми на кнопку "Start" (Пуск) > Settings > Control Panel (Панель управления), там Regional Options (Региональные настройки) > Закладка Date (Дата). И экспериментируй. А еще лучше купи книжку типа "Windows для чайников" или чего-нибудь немного попродвинутей и поизучай, прежде чем задавать подобные вопросы.


ANB   (2005-05-20 09:48:00) [28]


> но что значит региональные настройки где это и что там надо
> настроить????????
. Хм. Начинаю надеятся, что с работы меня таки не уволят из-за возраста.


Peter_cc   (2005-05-20 09:47:00) [29]


> ANB ©   (20.05.05 09:43) [5]
>
> > MDATE=’21.01.2005’
> - сравнение даты и строки. Правильно ругается.
> А про Params и ParamByName слышал ?
нет...:( ну а как надо написать запрос????


Peter_cc   (2005-05-20 09:46:00) [30]


> 1. Сходи в региональные натсройки и увидишь там что есть
> дата у тебя на машине.
я может совсем зеленый но что значит региональные настройки где это и что там надо настроить????????


> 2. Запросы типа того что ты написал неправильны и "опасны"
> по причине п.1
> Правильнее при составлении запросов использовать параметры.
> почитай в любой книжке про параметрические запросы.
а про использовать параметры обязательно почитаю прямо сейчас начну...:)


ANB   (2005-05-20 09:43:00) [31]


> MDATE=’21.01.2005’
- сравнение даты и строки. Правильно ругается.
А про Params и ParamByName слышал ?


Johnmen   (2005-05-20 09:43:00) [32]

Я всегда говорил, что малыш в возрасте ~1 год знает только 2 слова: "мама" и "дай". Зачем ему знать больше ?
:)))


Max Zyuzin   (2005-05-20 09:42:00) [33]

>Peter_cc   (20.05.05 09:37) [2]
Проще по пунктам
1. Сходи в региональные натсройки и увидишь там что есть дата у тебя на машине.
2. Запросы типа того что ты написал неправильны и "опасны" по причине п.1
Правильнее при составлении запросов использовать параметры. почитай в любой книжке про параметрические запросы.


Peter_cc   (2005-05-20 09:37:00) [34]


> Anatoly Podgoretsky ©   (20.05.05 09:26) [1]
> Привести запрос в соответствие с региональными настройками.
> После этого задуматься и перейти на использование параметров.
хм...я тебя не понял...можно попроще и поподробнее...:)


Anatoly Podgoretsky   (2005-05-20 09:26:00) [35]

Привести запрос в соответствие с региональными настройками. После этого задуматься и перейти на использование параметров.


Страницы:   1 2

Наверх

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