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

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

Paradox - не работает Filter LIKE [D7, Paradox]


azamatufa ©   (2008-04-25 07:04:00) 

Привет, мастера!

Вот незадача (
имею следующее:


Table1.Close;
Table1.Filtered := false;
Table1.Filter := 'Name LIKE ' + QuotedStr('%' + Edit1.Text + '%');
Table1.Open;


вылетает с ошибкой:
EDBEngineError with message 'Operation not applicable'

ругагается на Open. Даже filtered := true - еще не успел поставить, уже на Open ругается.

это я медленный газ или парадокс?

Спасибо!


Anatoly Podgoretsky   (2008-04-25 09:42:00) [1]

> azamatufa  (25.04.2008 09:31:11)  [11]

А если еще сказать ReadOnly = True то даст еще больше, сверх повышенную надежность.
яяя


Anatoly Podgoretsky   (2008-04-25 09:35:00) [2]

> azamatufa  (25.04.2008 08:59:10)  [10]

Там где можно было работать с Tаble завсегда можно работать с Query, поскольку Select * FROM Tbl является точным, но более быстрым и более надежным эквивалентом Tаble, а с добавлением прочих частей резко вырывается вперед.


azamatufa   (2008-04-25 09:31:00) [3]

сам себе отвечу - даст, если сказать RequertLive !!!!!


azamatufa   (2008-04-25 08:59:00) [4]


> Зачем мучаешь? Мазозист? Уйди на Query и не мучайся.

хорошо, уйду.
Query даст редактировать?


Anatoly Podgoretsky   (2008-04-25 08:55:00) [5]

> azamatufa  (25.04.2008 08:30:06)  [6]

Зачем мучаешь? Мазозист? Уйди на Query и не мучайся.


Anatoly Podgoretsky   (2008-04-25 08:36:00) [6]

> ЮЮ  (25.04.2008 07:40:04)  [4]

В БДЕ и в большинстве движков, есть в SQL и небольшого ряда продуктов


Anatoly Podgoretsky   (2008-04-25 08:35:00) [7]

> ЮЮ  (25.04.2008 07:40:04)  [4]

Ну что вы все гадаете, нет никакого LIKE в LocalSQL


azamatufa   (2008-04-25 08:30:00) [8]


> ЮЮ

Спасибо!! Ansi- опа! =)
все. при помощи Query - работает.

(а так для себя помучаю Table..)

Всем спасибо что откликнулись!
Супер форум!


Loginov Dmitry   (2008-04-25 07:50:00) [9]

> 'WHERE UPPER(Name) LIKE ' + QuotedStr('*' + AnsiUpperCase(Edit1.Text)
> + '*')


Звездочки... Это как это???


> вылетает с ошибкой:
> EDBEngineError with message 'Operation not applicable'


В TTable прокатывает только такое:
Filter = 'Name = ' + QuotedStr(Edit1.Text + '*');

Для расширенной фильтрации на клиенте, следует юзать соответствующие компоненты: TClientDataSet.


ЮЮ   (2008-04-25 07:40:00) [10]

'WHERE UPPER(Name) LIKE ' + QuotedStr('*' + AnsiUpperCase(Edit1.Text) + '*')

Вероятно, в фильтре также


azamatufa   (2008-04-25 07:31:00) [11]


> Как сделать Case Insensitive ???

сам себе отвечу: свойства TTable =)

ладно буду пробоваь с TQuery..


azamatufa   (2008-04-25 07:22:00) [12]

вот что нашел:
справка по 'Filter property (TBDEDataSet)'
там приведен пример только вот так:
.... Filter := 'Name = ' + QuotedStr('Patternt' + '*');

ну ладно, хоть так.

теперь вопрос второй:
Как сделать Case Insensitive ???

Спасибо!!!


ЮЮ   (2008-04-25 07:21:00) [13]

> это я медленный газ или парадокс?

Это TTable.
Если бы это было в запросе
 'WHERE Name LIKE ' + QuotedStr('%' + Edit1.Text + '%')
то я бы посоветовал заменить '%' на '*'


Наверх

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