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

Вниз

DBGrid и работа с ним   Найти похожие ветки 

 
voe   (2007-04-19 17:43) [0]

Есть вопрос:
НА форме имеется DBGRID в котором из базы IB по средствам SQL выбраны данные мне нужно считать каждую строку из DBGRIDа и запихнуть в другую таблицу.
Как мне это сделать?


 
Desdechado ©   (2007-04-19 17:50) [1]

with( query ) do begin
First;
while( not eof ) do
 считать
 запихать
 next;
end;
end;


 
voe   (2007-04-20 09:48) [2]

Спасибо.
Но как мне считать из DBgid данные?


 
zdm ©   (2007-04-20 09:51) [3]


> voe   (20.04.07 09:48) [2]
> Спасибо.Но как мне считать из DBgid данные?

Не понял, данные хранятся не в dbgrid, а dataset...или я от жизни отстал :)


 
Johnmen ©   (2007-04-20 09:54) [4]

"Не хочется тебя расстраивать, но тут такое дело... Короче, в ячейках DBGrid"а вообще ничего нет. Этот грид является окном на набор данных. Ну это как ты смотришь в телек, а там люди, но ты же понимаешь, что люди не сидят в телеке...
ПонЯл?"
(c) Приятно себя цитировать :)


 
pavel_guzhanov ©   (2007-04-20 09:56) [5]

var s:String; //переменная, в которую считываем данные
    Row, i:Integer;

begin
...
for row := 0 to DBGrid1.DataSource.DataSet.RecordCount-1 do
 begin
   i:=1;
   for col := 1 to 12 do //считываем данные с первого по 12-й столбец
     begin
       S:=DBGrid1.Fields[col].AsString;
      // далее помещаем S в другую таблицу
      ...

      ...
       inc(i);
     end; // окончание цикла по столбцам
   DBGrid1.DataSource.DataSet.Next;
 end; // окончание цикла по строкам
...
end;


 
pavel_guzhanov ©   (2007-04-20 10:00) [6]

пардон:о)
тоесть вот так:

var s:String; //переменная, в которую считываем данные
   Row, Col:Integer;

begin
...
for row := 0 to DBGrid1.DataSource.DataSet.RecordCount-1 do
begin
  for col := 1 to 12 do //считываем данные с первого по 12-й столбец
    begin
      S:=DBGrid1.Fields[col].AsString;
     // далее помещаем S в другую таблицу
     ...

     ...
    end; // окончание цикла по столбцам
  DBGrid1.DataSource.DataSet.Next;
end; // окончание цикла по строкам
...
end;


 
zdm ©   (2007-04-20 10:14) [7]


> pavel_guzhanov ©   (20.04.07 10:00) [6]

А ЗАЧЕМ!?!?!?!?
dbgrid привязан допустим к ADOQuery, ну не важно или PFIBDataSet и т.д.
with Query do
begin
  while not eof do
     begin
        s:=fieldbyname("name").asstring;
        next;
     end;
end;


 
voe   (2007-04-20 10:37) [8]


> dbgrid привязан допустим к ADOQuery, ну не важно или PFIBDataSet
> и т.д.
> with Query do
> begin
>   while not eof do
>      begin
>         s:=fieldbyname("name").asstring;
>         next;
>      end;
> end;


Непримите за полного дауна но что должнобыть между with и do?


 
pavel_guzhanov ©   (2007-04-20 10:42) [9]


> Непримите за полного дауна но что должнобыть между with
> и do?

имя твоего Query, с которым связан DBGrid, из которого тебе надо достать данные....


 
voe   (2007-04-20 10:48) [10]

Вопрос на последок как определить нашел что нибуть запрос select ?
Компонент использую IBQuery.
Благадарю всех кто помагал.


 
pavel_guzhanov ©   (2007-04-20 11:01) [11]

if not IBQuery.IsEmpty then


 
voe   (2007-04-20 11:06) [12]


> pavel_guzhanov ©   (


Благадарю!


 
MsGuns ©   (2007-04-20 11:29) [13]

>pavel_guzhanov ©   (20.04.07 10:00) [6]

И это будет работать во всех случаях ?


 
pavel_guzhanov ©   (2007-04-20 12:19) [14]


> И это будет работать во всех случаях ?

Насчет всех случаев ничего не скажу, но у меня работает в нескольких небольших программках....


 
MsGuns ©   (2007-04-20 13:49) [15]

>pavel_guzhanov ©   (20.04.07 12:19) [14]
>Насчет всех случаев ничего не скажу, но у меня работает в нескольких небольших программках....

В любом случае ТАК делать не стОит
Имеется в виду вырезать гланды через задний проход ;)


 
Johnmen ©   (2007-04-20 14:01) [16]


> pavel_guzhanov ©   (20.04.07 11:01) [11]
> if not IBQuery.IsEmpty then


> MsGuns ©   (20.04.07 11:29) [13]
> >pavel_guzhanov ©   (20.04.07 10:00) [6] И это будет работать
> во всех случаях ?

Это будет работать везде и всегда, во всех случаях, при любой погоде...
Достаточно сначала сделать  IBQuery.Open. :)))


 
pavel_guzhanov ©   (2007-04-20 14:06) [17]


> > >pavel_guzhanov ©   (20.04.07 10:00) [6] И это будет работать
>
> > во всех случаях ?

Вопрос относился к посту №6 :о))


 
Johnmen ©   (2007-04-20 14:14) [18]


> pavel_guzhanov ©   (20.04.07 14:06) [17]
> Вопрос относился к посту №6 :о))

А-а-а... Ну это гарантированно работать не будет...



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

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

Наверх




Память: 0.51 MB
Время: 0.04 c
15-1176397529
DillerXX
2007-04-12 21:05
2007.05.13
Что делать в Киеве?


15-1176497172
Petr V.Abramov
2007-04-14 00:46
2007.05.13
Не обос<по большому>ся бы... :)


2-1176904358
Neket
2007-04-18 17:52
2007.05.13
Как узнать в путь...


2-1177223988
Doom_2
2007-04-22 10:39
2007.05.13
array of string


2-1177068932
Настена
2007-04-20 15:35
2007.05.13
Помощь нужна