Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как обработать SQL запрос? [D5, MSSQL, access]


Страницы:   1 2 3

Kinder ©   (2003-10-22 15:47:00) 

Вот я написал

with moduledata.Query do begin
SQL.Text :=
"SELECT fio FROM people WHERE id="+table.SelectedField.Text;
ExecSQL;

Close;
end;

Как теперь взять массив со значениями fio?


Kinder   (2003-10-22 19:39:00) [41]

Ставил. А причем тут это?


Fay   (2003-10-22 19:33:00) [42]

апдатесы ставил для D5?


Kinder   (2003-10-22 19:32:00) [43]

И чего делать? Вроде же всё корректно.


Vlad   (2003-10-22 19:27:00) [44]

Нет данных соответствующих SQL запросу.
Другими словами Query пуст.


Kinder   (2003-10-22 19:20:00) [45]

Сделал
with moduledata.Query do begin
Close;
SQL.Clear;
SQL.Text :="SELECT * FROM people WHERE id="+table.SelectedField.Text;
Open;
while not eof do
begin
ShowMessage(Fields[1].AsString);
next;
end;
Close;
end;


Теперь пишет ошибку
Either BOF or EOF is True, or the current record has been deleted. Requested operation requires a current record.


Vlad   (2003-10-22 19:16:00) [46]

while not eof do
begin
ShowMessage(Fields[1].AsString);
Next;
end;


Kinder   (2003-10-22 19:12:00) [47]

Теперь работает, но цикл не останавливается.

procedure TForm1.tableCellClick(Column: TColumn);
begin

with moduledata.Query do begin
Close;
SQL.Text :="SELECT * FROM people WHERE id="+table.SelectedField.Text;
Open;
while not eof do
ShowMessage(Fields[1].AsString);
Close;
end;

end;


Всё время метка выводится с одним и тем же значением. Тут цикл должен пройти один раз и закончится вроде. А он повторяется бесконечно.


Vlad   (2003-10-22 19:02:00) [48]

>Sandman25 © (22.10.03 18:09) [4]
поправочка - while notEof


Sandman25   (2003-10-22 18:55:00) [49]

Тогда попробуйте Fields[0].AsString


Kinder   (2003-10-22 18:54:00) [50]

Странно. Но пишет
Query: Field "fio" not found.


Sandman25   (2003-10-22 18:09:00) [51]

with Query do
while Eof do
StringList.Add(FieldByName("fio").AsString;


Kinder   (2003-10-22 17:53:00) [52]

Ну скажем в TstringList загнать значения fio из базы. Как?


bushmen   (2003-10-22 15:51:00) [53]

with moduledata.Query do begin
Close;
Clear;
SQL.ADD :=
("SELECT fio FROM people WHERE id="+table.SelectedField.Text);
Open;
end;

А потом, смотря куда тебе результат нужен.


Reindeer Moss Eater   (2003-10-22 15:50:00) [54]

with moduledata.Query do begin
SQL.Text :=
"SELECT fio FROM people WHERE id="+table.SelectedField.Text;
open;
while not Eof do
begin
...
Next;
end;
Close;
end;


Страницы:   1 2 3

Наверх

Титульная страница Поиск, карта сайта Написать письмо