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

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

Adotable.filter [D6, D7]


Dest81 ©   (2006-04-07 14:43:00) 

Есть база *.mdb! Пробую фильтровать по текстовому полю - фильтрует если только есть полное совпадение! Как фильтровать без учета регистра и по первичному совпадению (типа 'Коз*')???


sniknik   (2006-04-07 17:42:00) [1]

> Cпасибо! Пошло!
но это неправильно!!! ;)
это написано, чтобы показать абсурдность TADOTable, поменяй его на TADODataSet с тем же кодом, и все станет на свои места. (и ни приведения ни обьявления дополнительных классов станут не нужны)


Dest81   (2006-04-07 17:31:00) [2]

Cпасибо! Пошло!


sniknik   (2006-04-07 17:13:00) [3]

в принципе можно не обьявлять... просто приведение делать например к TADODataSet, будет одно и тоже.


sniknik   (2006-04-07 17:11:00) [4]

где у тебя форма на которой кнопка лежит? вот там

type
 TMyADOTable = class(TADOTable);

 TForm1 = class(TForm)
   Button1: TButton;
   ....
   procedure Button1Click(Sender: TObject);
   ....
 end;


Dest81   (2006-04-07 16:31:00) [5]

У меня чето неидет можно пример для adotable1 и где именно обявлять класс


sniknik   (2006-04-07 16:10:00) [6]

> А для Adotable
думаеш он чтото значит? Adotable это "обманка для идиотов" специальный генератор глюков, а на самом деле, внутри под шелухой, это "белый и пушистый" ADODataSet. (поэтому это и для него тоже)

код для проверки
type
 TMyADOTable = class(TADOTable); //для доступа к "закрытым" методам, обьявить в том же модуле, перед/после TForm1

procedure TForm1.Button1Click(Sender: TObject);
begin
 with TMyADOTable(ADOTable) do begin
   CommandType:= cmdText;
   CommandText:= 'SELECT * FROM '+TableName+' WHERE Name LIKE ''Коз%''';
   Open;
 end;
end;

и если вернет все из таблицы, а не только то что в условии, то я балерина...


Dest81   (2006-04-07 15:49:00) [7]

А для Adotable


Соловьев   (2006-04-07 15:24:00) [8]

SELECT Таблица1.Name
FROM Таблица1
WHERE UCase(Name) like '*М*'


Desdechado   (2006-04-07 15:14:00) [9]

UPPER(fld) LIKE 'КОЗ%'


Наверх

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