13th
Апр

“Культура” работы с БД

Posted by Chas under Пост-обзор

Совет по работе с бд от Stilet.

Имею класс, в котором описаны поля, а так же имею список (а-ля массив) обьектов этого класса.
Далее:

  1. Открыл набор
  2. Создал экземпляр класса, вписал в него поля из БД
  3. В цикле перешел на следующую запись и повторил 2) пока не конец таблицы
  4. Закрыл набор, разорвал связь с базой

Все теперь у меня данные сидят в массиве обьектов.

Вот так это может выглядеть:
Это класс с полями

TAsm=class(TComponent)
Private
FFields:TStringList;
public
constructor Create(AOwner: TComponent);
destructor Destroy; override;
end;

Это его наполнение

var ado:TADOQuery;i:integer;a:TAsm;
begin Result:=nil;
ado:=TADOQuery.Create(nil);
ado.ConnectionString:=ConnectString;
ado.SQL.Text:=’select * from GetModels()’;
ado.Open;
while not ado.Eof do begin
a:=TAsm.Create(self);
for i:=0 to ado.FieldCount-1 do
a.FFields.Add(ado.Fields.DisplayName+’=’+Trim(ado.Fields.AsString));
FAsms.Add(a);
ado.Next;
end;
ado.Close;ado.Free;
end;

Теперь в “массиве” FAsm у меня записи из базы.

Перейти к теме на форуме

Похожие статьи