![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
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 + '%')
то я бы посоветовал заменить '%' на '*'