Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Базы данных
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 15.01.2009, 22:37
MycTafa MycTafa вне форума
Прохожий
 
Регистрация: 14.01.2009
Сообщения: 5
Репутация: 10
По умолчанию

Код:
dbgrid1.DataSource:=datasource1;
adoquery1.Active:=false;
adoquery1.SQL.Clear;
p:='SELECT * FROM '+Adotable1.TableName+#13#10+' WHERE ';
for i:=Low(ACons) to High(ACons) do
   begin
   if ACons[i].AEdit.Text<>'' then
   begin
   if (i<>Low(ACons)) and (p<>'SELECT * FROM '+Adotable1.TableName+#13#10+' WHERE ') Then p:=p+' AND ';
   if adotable1.FieldByName(ACons[i].ALabel.Caption).DataType=ftstring then p:=p+ACons[i].ALabel.Caption+' = '''+ACons[i].AEdit.Text+'''';
   if adotable1.FieldByName(ACons[i].ALabel.Caption).DataType=ftSmallint then p:=p+ACons[i].ALabel.Caption+' = "'+ACons[i].AEdit.Text+'"'+'';
   if adotable1.FieldByName(ACons[i].ALabel.Caption).DataType=ftInteger then p:=p+ACons[i].ALabel.Caption+' = ''"'+ACons[i].AEdit.Text+'"'+'';
   if adotable1.FieldByName(ACons[i].ALabel.Caption).DataType=ftWord then p:=p+ACons[i].ALabel.Caption+' = '''+ACons[i].AEdit.Text+'''';
   if i=High(Acons) then p:=p+';';
   showmessage(tfieldtype adotable1.FieldByName(ACons[i].ALabel.Caption).DataType);
   end;
   end;
if p='SELECT * FROM '+Adotable1.TableName+#13#10+' WHERE ' then dbgrid1.DataSource:=datasource1 else
begin
adoquery1.SQL.Add(p);
adoquery1.Active:=true;
dbgrid1.datasource:=datasource2;
end;

lmikle: Где теги, мать вашу!!!

Вот такая вот штука получается. Но оно вообще не проверяет тип поля,даже если оно текстовое, оно этого не замечает,и запрос оканчивается словом WHERE. Без проверки на тип поля поиск работает,но только для текстовіх полей. Помогите пожалуйста,в последний раз Что тут не так?
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 10:10.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025