![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как прочитать данные из TSDQuery/TIBQuery?
Влад © (2004-09-03 12:17:00)Добрый день уважаемые.
Столкнулся с проблемой..
В программе нельзя использовать DBGrid, всвязи со спецификой ТЗ.
Проблема заключается в том, что после выполнения простого запроса через TSDQuery (или TIBQuery), я к своему стыду не могу прочитать данные..
Вот что получется
select * from events where id>(maxid - VisibleColCount)
далее, когда я пытаюсь прочитать значения полей, то возвращается только значение из первой прочитанной записи:
Читаю сейчас так:
var Msgs:Variant;
Msgs := SDQuery.FieldValues['MSG']; // где MSG - текстовое поле
при проверке:
SDQuery.RecordCount = VisibleColCount
а VarArrayDimCount(Msgs) = 0....
а Msgs равен первой записи из полученной в результате выполения запроса таблицы.
Подскажите пожалуйста как можно правильно считать столбик данных.
Заранее благодарен,
Влад
Карелин Артем (2004-09-06 11:20:00) [1]Роман Снегирев (03.09.04 13:00) [4]
Ты тип переменной Msg смотрел? В данном случае это правильно.
Роман Снегирев (2004-09-03 13:00:00) [2]вот это Msgs := SDQuery.FieldValues['MSG']
по моему полная шнягя, надо писать
Msgs := SDQuery.FieldByName('MSG').AsString
Влад (2004-09-03 12:25:00) [3]Карелин Артем © (03.09.04 12:20) [1]
Огромное спасибо
Sergey13 © (03.09.04 12:21) [2]
к сожалению, ТЗ утверждено...
Sergey13 (2004-09-03 12:21:00) [4]2Влад (03.09.04 12:17)
>В программе нельзя использовать DBGrid, всвязи со спецификой ТЗ.
Переписать ТЗ нафиг.
Карелин Артем (2004-09-03 12:20:00) [5]var Msgs:Variant;
while not(SDQuery.eof) do
begin
Msgs := SDQuery.FieldValues['MSG']; // где MSG - текстовое поле
SDQuery.next;
end;