Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.01.2010, 13:51   #1
Ruschel
Пользователь
 
Регистрация: 06.10.2009
Сообщений: 16
Вопрос Filter в MEMO-поле Paradox-таблицы(BDE)?

Всем привет! Значит есть попытка реализовать загон многострочной информации в мемо-поле с помощью объединения двух лист-бокс и потом фильтрация по телефону записей:
<имя> <телефон>
Под имя выделяется 35 символов, под телефон 14 и вконце стоит "#13#10". И таких контактов может быть сколько угодно в одной записи таблицы.
Вопрос: как сформировать запрос для строки Filter чтобы найти запись в БД с нужным номером телефона без помощи SQL(если это возможно вообще)? Если только SQL, то как можно?
Код:
sFilter:=sFilter+ 'ZContact='+#39+'*'+ContactPhone.Text+'*'+#39;
Вот так не работает, пишет не соответствие типов вроде (Type mismatch)

ЗЫ: Может у кого есть еще идея как можно реализовать возможность прикрепления к 1 записи таблицы множество контактов(имя+телефон), чтобы они могли отображаться ToolTips(аля Hint с полным содержанием ячейки, если не помещается) в DBGridEh(библиотека EhLib)? Реляционная связь не подходит для этого...

Последний раз редактировалось Ruschel; 09.01.2010 в 14:40.
Ruschel вне форума Ответить с цитированием
Старый 11.01.2010, 18:18   #2
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Изврат какой-то, пардон
Попробуйте вот так:
Код:
sFilter:=sFilter+' and ZContact=*'+ContactPhone.Text+'*';
(Type mismatch потому, что нужно 39, а не #39)

Или, если уж "приперло" поставить кавычки, то:
Код:
sFilter:=sFilter+' and ZContact='+QuotedStr('*'+ContactPhone.Text+'*');

Последний раз редактировалось mihali4; 11.01.2010 в 18:22.
mihali4 вне форума Ответить с цитированием
Старый 11.01.2010, 19:09   #3
Ruschel
Пользователь
 
Регистрация: 06.10.2009
Сообщений: 16
По умолчанию

в первом случае ошибка Expression expected but '*' found
а вторая запись абсолютно ничем не отличается от моей, #39 - это код кавычки.
Ruschel вне форума Ответить с цитированием
Старый 11.01.2010, 19:45   #4
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Да, с первым вариантом промахнулся.
А насчет #39 я вам написал.
Так что "абсолютно ничем не отличается" - это явное преувеличение...
mihali4 вне форума Ответить с цитированием
Старый 11.01.2010, 20:03   #5
Ruschel
Пользователь
 
Регистрация: 06.10.2009
Сообщений: 16
По умолчанию

проверка сформированного фильтра showmessage показывает, что строка фильтра такая же. И в любом случае это все равно не рабочий вариант.
Ruschel вне форума Ответить с цитированием
Старый 11.01.2010, 21:01   #6
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Тьфу ты... Это ж мемо-поле...
Оно не поддается фильтрации.
mihali4 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
КАК НА АВТОМАТЕ ДОБАВИТЬ ПОЛЕ В ФАЙЛ DB (Paradox) grenles БД в Delphi 7 07.05.2012 07:56
Данные из двух полей исх. таблицы в одно поле сводной таблицы Strelec79 Microsoft Office Excel 2 02.08.2009 13:59
автоинкрементное поле в Paradox Liones БД в Delphi 8 20.04.2009 13:48
Изменение связаного поля (Delphi, BDE, Paradox) Шульц БД в Delphi 4 08.01.2009 06:51
Поиск слова в поле типа МЕМО БД PARADOX KAZAKH БД в Delphi 2 05.06.2008 07:22