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

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

Подскажите пожалуйста. [D6]


Vit ©   (2004-04-19 14:40:00) 

Надо посчитать количество подобных дат.
Выдает ошибку Type mismatch in expression
Дата_утвержд: тип поля Date

procedure TMain.Edit7Change(Sender: TObject);
begin
query1.Close;
query1.SQL.Clear;
query1.SQL.Add('select count(distinct Дата_утвержд)from main where Дата_утвержд LIKE "'+Edit7.Text+'%'+'"');
query1.Open;
end;


sniknik   (2004-04-19 14:49:00) [1]

Дата_утвержд = параметр, это в случае если там чистая дата без времени, или between параметр1 and параметр2 со временем, вставка в запрос даты строкой/время (отсечение)/и др.тонкости зависят от используемой базы, доступа.


Vit   (2004-04-19 14:47:00) [2]

Спасибо, сейчас попробую.


roottim   (2004-04-19 14:45:00) [3]

like работает со строковым типом...
если он тебе так нужен... то Дата_утвержднеобходимо преобразовать в строку


VAleksey   (2004-04-19 14:45:00) [4]

С помощью функции Cast

'select count(distinct Cast(Дата_утвержд as character))from main where Cast(Дата_утвержд as Character) LIKE "'+Edit7.Text+'%'+'"'

PS
О синтаксисе функции Cast см. в описании SQL для своего сервера.


Vit   (2004-04-19 14:43:00) [5]

Так а что делать. Подскажи пожалуйста как с ней быть..


sniknik   (2004-04-19 14:42:00) [6]

чегож чты с даток ка со строкой? не одно и то же!


Наверх

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