![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
![]() Я совсем чайник, помогите, если не лень!
Вопрос такой. Есть таблица DBGrid, в ней есть поле c названиями, очень длинными, но имеющими одинаковое начало. Нужно, чтобы в поле TEdit вводились начальные буквы, а результаты в DBGrid выводились по мере заполнения поля TEdit. Если есть возможность - бросьте вариант кода, чтобы с чего-то начать. Заранее спасибо, надеюсь на понимание. |
#2
|
|||
|
|||
![]() Там Zylex выкладывал подобное.
http://www.delphisources.ru/forum/showthread.php?t=4012 |
#3
|
|||
|
|||
![]() Цитата:
Я это уже читал, но у меня задача чуть хитрее. Представьте, что в строке написано типа : Муниципальная школа искусств. А я ввожу в поле поиска по буквам : школа. И хочу, чтобы вывелись все строки, где есть слова с буквы Ш, затем ШК, и т.д.. Т.е. поиск не с первого символа, а с любого первого совпадения внутри строки. Может, слишком путано, но что-то такое хотелось бы. |
#4
|
|||
|
|||
![]() По идее в этом коде
Код:
s:=edit1.text+'%'; with Query1 do begin Close; SQL.Clear; SQL.Add('SELECT DISTINCT familia FROM Table'); SQL.Add('WHERE familia LIKE'+quotedstr(s)); SQL.Add('ORDER BY familia'); Open; end; |
#5
|
|||
|
|||
![]() Спасибо огромное, все работает. Осталось только понять, а что это было?
Видимо надо годика два отпахать. чтобы разобраться. |
#6
|
|||
|
|||
![]() могу пояснить
![]() Код:
s:=edit1.text+'%'; // здесь устанавливается маска поиска, т.е. все начинающееся с текста и неважно чем продолжающееся with Query1 do begin // работаем с query Close; // закроем запрос, если вдруг он открыт SQL.Clear; // очистим строки запроса SQL.Add('SELECT DISTINCT familia FROM Table'); // добавляем строки, в переводе на человеческий (выбрать уникальные фамилии из таблички) SQL.Add('WHERE familia LIKE'+quotedstr(s)); // (где фамилии похожи на строку маски в одинарных кавычках) SQL.Add('ORDER BY familia');// (отсортировать по фамилии) Open; // откроем запрос чтобы он выполнился end;// хватит работать с query |