|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Поиск в таблице бд
Имеется таблица в базе данных с разными полями, необходимо в ней организовать поиск данных по какому-то из этих полей. Например, в таблице есть столбец "Кол-во", содержащий строки 5, 2, 50, 2, 2 и т.д. Допустим если искать по этому столбцу строки с 2, при нажатии на копку поиск , он находит первую строку с 2, если эта строка с двойкой не удовлетворяет, то продолжить поиск таким образом, что при повторном нажатии кнопки "Поиск" он нашел строку со след 2 и т.д. если строк с двойками больше нет, то выдал сообщение ”не найдено”.
Поиогите пожалуйста это реализовать. В принципе я сделал поиск с пом Locate, FIND KEY, FIND_NEAREST, он находит строку с первой двойкой, но при повторном нажатии на кн "Locate" он все-равно находит эту же строку.. Вот мой поиск с пом Locate: Код:
procedure TBooks.Button1Click(Sender: TObject); var finder:string; begin case combobox1.ItemIndex of 0:finder:='B_NAME'; 1:finder:='B_DATE'; 2:finder:='B_KOL'; 3:finder:='B_N_KOL'; 4:finder:='Avtor'; 5:finder:='ganr'; 6:finder:='IZDAT'; end; dm.BOOK.Locate(finder,edit1.Text,[loPartialKey]) end; Последний раз редактировалось Aндрей, 19.10.2009 в 20:44. |
#2
|
||||
|
||||
Вот, держите. Должен помочь как мне когда-то
|
#3
|
||||
|
||||
Сортируем по нужному столбцу, выполняем первый поиск.
Если надо дальше искать, переходим к следующей записи и проверяем на совпадение, и так до тех пор пока запись = искомому значению. Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |