|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Нахождение максимального элемента в базе данных
Доброго времени суток! У меня имеется база данных содержащая название музеи и кол-во посетителей. Я хочу найти где больше всего посетителей и вывести название этого музея в Edit. Делаю это так:
Код:
max:=0; AdoDataset1.First; While AdoDataSet1.Eof<>true do begin If AdoDataSet1Posit.AsInteger>max then begin max:=AdoDataSet1Posit.AsIneger; Edit1.Text:=AdoDataSet1Nazv.AsString; AdoDataSet1.Next; end; end; lmikle: Пользукмся тегами!!! Но программа зависает на второй строке в таблице. А если убрать строчку max:=AdoDataSet1Posit.AsIneger;, то программа просто просматривает все строчки и выводит название последнего музея, что довольно логично=) Помогите, плиз, понять в чем загвостка! |
#2
|
||||
|
||||
Она не зависает, а бесконечно бегает на проверке максимума т.к. до инструкции AdoDataSet1.Next не добирается.
Так попробуйте: Код:
max:=0; AdoDataset1.First; While not AdoDataSet1.Eof do begin If AdoDataSet1Posit.AsInteger>max then begin max:=AdoDataSet1Posit.AsIneger; Edit1.Text := AdoDataSet1Nazv.AsString; end; AdoDataSet1.Next; end; Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. Последний раз редактировалось Страдалецъ, 20.12.2009 в 21:52. |
#3
|
|||
|
|||
Зачем так сложно? Ведь можно сделать несложный запрос к базе данных, а в ответ получить только название магазина)
|
#4
|
|||
|
|||
Спасибо большое, странно, что сам не догадался =)
|