|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
28.07.2007, 00:14 | #1 |
Пользователь
Регистрация: 02.07.2007
Сообщений: 11
|
Помогите ребята с индексом
Короче у меня на едит1 по событию ончанге стоит процедура:
Код:
|
28.07.2007, 01:40 | #2 |
Пользователь
Регистрация: 08.07.2007
Сообщений: 47
|
Я так понимаю, ты сдесь производиш поиск по полю Fio. Попробуй делать поиск не фильтром, а через locate.
|
28.07.2007, 09:56 | #3 |
Участник клуба
Регистрация: 07.07.2007
Сообщений: 1,518
|
Фильтр вообще работает очень медленно, а при больших объемах данных его лучше вообще не использовать. Оптимальный вариант sql-запросом так
Query.SQL.Add('Select * from TABLE where Upper(FIO) LIKE Upper("%' + FindEdit.Text +'%");'); (по подстроке без учета регистра) |
28.07.2007, 21:58 | #4 |
Пользователь
Регистрация: 02.07.2007
Сообщений: 11
|
да я произвожу поиск по Fio а вот чет с сикулом не въезжаю можете ребят поподробнее...?
|
28.07.2007, 23:42 | #5 |
Пользователь
Регистрация: 08.07.2007
Сообщений: 47
|
Cмотря по коду у тя главная таблица соединяется с помощью ADOTable, если да, то добавляеш еще одну форму, кидаеш ADOQuery, DataSet
DBGrid соеденяеш их между собой, кидаеш на главную флрму кнопку, тыкаеш на нее 2 раза, пишеш: Код:
результат: все записи которые начинаются на ааа Если хочеш чтобы вывело точно совпадения текста то после +Edit1.text+ % не ставится Если хочеш, чтобы поиск букв ишол во всех словах то перед +Edit1.Text+ ставиш % (т.е ''%'+Edit1.Text+'%'') |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Ребята помогите | Doctor_iZmail | PHP | 2 | 17.02.2008 23:01 |
Ребята я новичок помогите..... | Alex-jr | Microsoft Office Excel | 5 | 17.12.2007 07:02 |