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

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

Фильтрация с неточным совпадением [D7, Access]


muster ©   (2006-01-15 00:50:00) 

Здравствуйте! Как сделать фильтрацию записей по фильтру с не полным совпадением? например
Filter:='Фамилия=''и'''
и чтобы при этом выбирались записи не только со значением поля 'и', но и 'Иванов', 'Исаев' и т.д.
Пробовал следующее
AdoTable1.FilterOptions:=[foNoPartialCompare];
но при выполнении выдаёт, что FilterOptions not supported


sniknik   (2006-01-15 18:03:00) [1]

> А в чем проблема Query?
в том что изначально в ADO нет такого компонента, а то что есть это имитация от борланда на основе 2х - ADODataSet и ADOCommand + добавка в виде метода SQL.
в итоге то что в других технологиях было "честным" и полезным компонентом, в ADO стало... ну вот вам на работе нужен человек единственная функция которого передать дяде Васе что делать, т.к. работает именно он. не лучше ли сразу говорить с ним, и зарплату ему добавить за счет уволенного посредника.


atruhin   (2006-01-15 17:33:00) [2]

>>ADOQuery это не идиотизм а так...
А в чем проблема Query? С ADO не работал, но в BDE, IB, FIB очень нужный компонент, если необходимо выполнить одиночный оператор.


sniknik   (2006-01-15 13:02:00) [3]

> Вы имеете ввиду, что лучше использовать ADOQuery?
нет я имел ввиду ADODataSet/ADOCommand

ADOQuery это не идиотизм а так... легкая степень помешательства ;о)
в психушку еще не кладут но уже говорят "товарищь со странностями/тараканами в голове" (а кто не без них? ;)


muster   (2006-01-15 12:49:00) [4]

спасибо большое - 'Фамилия LIKE ''и%''' работает замечательно


muster   (2006-01-15 11:36:00) [5]


> p.s. руские названия полей/таблиц - отстой, использование
> AdoTable - идиотизм (если это делается сознательно, если
> по незнанию то меняй пока не поздно).


Вы имеете ввиду, что лучше использовать ADOQuery? если да, то я обязательно буду его использовать. Я сейчас просто учусь. А русский названия полей/таблиц рекомендуется использовать в книге Флёнова "Библия Delphi"


> 2) Чтобы после фильтрации оставались все записи начинающиеся
> с какой-либо буквы например "И" нужно делать так Фамилия='И*'

пробовал - не помогает


> Filter:='Фамилия LIKE ''и%''';


будем смотреть


sniknik   (2006-01-15 10:53:00) [6]

> например
> Filter:='Фамилия=''и'''

Filter:='Фамилия LIKE ''и%''';

p.s. руские названия полей/таблиц - отстой, использование AdoTable - идиотизм (если это делается сознательно, если по незнанию то меняй пока не поздно).


VitalikS   (2006-01-15 03:31:00) [7]

Небольшая справочка:
1) foNoPartialCompare-применяется для полного соответствия, для     строгого     поиска. В этом случае его использовать ненадо!!!
А вот foCaseInsensitive-не учитывать регистр. Лучше установить

2) Чтобы после фильтрации оставались все записи начинающиеся с какой-либо буквы например "И" нужно делать так Фамилия='И*'


DimonS   (2006-01-15 02:58:00) [8]

Через SQL-запрос это делается элементарно, а вот через Filter...
Я тоже как-то мучился, но, по-моему, все же пришлось сделать через метод Locate, если не ошибаюсь.


Наверх

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