Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.03.13;
Скачать: CL | DM;

Вниз

ADO MAX(....)   Найти похожие ветки 

 
sashakamap   (2005-02-11 13:25) [0]

Здравствуйте!
Есть Акцесс табоица(работаю через ADO компоненты). Есть ДБГрид, нужно сделать так, чтобы  в ДБгриде отобразилось только максимально значение определенного поля, например money.
Пробовал через ADOcommand, делал так:
ADOCommand.CommandText:="select max(money) from table";
ADOCommand.Execute;
Но это не работает, запрос выполняется, но ничего не происходит, как это можно сделать?


 
Danilka ©   (2005-02-11 13:30) [1]


> Но это не работает, запрос выполняется, но ничего не происходит,
> как это можно сделать?

что значит "ничего не происходит"? запрос либо выполняется корректно, либо не выполняется и выдает ошибку.


 
sashkamap   (2005-02-11 13:37) [2]

Запрос выполняется корректно, но в дбгриде ничего не меняется :( Почему?


 
Danilka ©   (2005-02-11 13:39) [3]

[2] sashkamap   (11.02.05 13:37)
1. Результат этого запроса (одна запись, одно поле) у тебя в грид выводится?
2. Что и в какой момент должно меняться?
:)


 
sashkamap   (2005-02-11 13:45) [4]

1. Нет не выводится
2. В дбгриде должна остаться лишь одна запись - максимальное значение поля money, а меняться должно сразу после запроса


 
Danilka ©   (2005-02-11 14:06) [5]

Извини, но, такое ощущение, что ты потомственный партизан. :)
Можешь поподробнее написать, предложений 5 хотя-бы, что там у тебя происходит?
Как я понимаю, есть грид, в который выводится 1 запись с максимальной суммой.
Максимальную сумму ты получаешь вышеприведенным запросом, пишешь ее в условии фильтра того запроса, результат которого отображается в гриде, и переоткрываешь его, так?
И, в результате у тебя отображается запись не с максимальной суммой, а та, которая отображалась ранее. Так?


 
sniknik ©   (2005-02-11 14:10) [6]

а что должно происходить?
Execute возвращает рекордсет, если его не обрабатывать то результат "канет в лету", как и любое необработаное значение функции впрочем.

> 1. Нет не выводится
а как ты ADOCommand к гриду подключил? вот тут и ответ.


 
sashkamap   (2005-02-11 14:19) [7]

Блин я понял :)
Извените я недавно начал разбираться в БД :)
Такой вопрос: как получить результат запроса?

ADOCommand.CommandText:="select max(money) from table";
ADOCommand.Execute;

?? Как получить значение?


 
sashkamap   (2005-02-11 14:20) [8]

Удалено модератором
Примечание: дубль


 
Danilka ©   (2005-02-11 14:23) [9]

Читай справку, что именно возвращает ADOCommand.Execute


 
Danilka ©   (2005-02-11 14:23) [10]

Удалено модератором


 
Danilka ©   (2005-02-11 14:30) [11]

хотя, возвращает он _RecodeSet, а в справке по Д5 про него ничего не написано.. незнаю, есть-ли в справке от более поздних версий, вобщем, _Recordset это ОЛЕ-объект, обратиться к значению поля текущей записи можно вот-так:
maxValue := ADOCommand.Execute.Fields(0).Value;



Страницы: 1 вся ветка

Текущий архив: 2005.03.13;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.025 c
1-1109375074
oleg_SYS
2005-02-26 02:44
2005.03.13
Глобальная обработка ошибок приложения


1-1109323510
Dysan
2005-02-25 12:25
2005.03.13
большие числа


14-1109053646
Vlad Oshin
2005-02-22 09:27
2005.03.13
http://rapira.ru/articles/article0423.htm


9-1102694266
Nic87
2004-12-10 18:57
2005.03.13
Прозрачная Вода


9-1102090055
Вась-Вась
2004-12-03 19:07
2005.03.13
Коммерческие проекты!