Einzelnen Beitrag anzeigen

Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#9

Re: [OOP] Wie viele Daten aus der DB laden?

  Alt 17. Jan 2010, 17:59
Hi,

das ist zwar eine gute Idee, ist aber auch nicht das, was ich wissen wollte

Angenommen, wir haben ein Objekt aus folgender Klasse

Delphi-Quellcode:
TArtikel = class(TObject)
private
  fID: Integer;
  fKategorie: Integer;
  fTitel: String;
  fRTFText: String;
public
  constructor Create;
  destructor Destroy; override;

  property ID: Integer read fID write fID;
  property Kategorie: Integer read fKategorie write fKategorie;
  property Titel: Integer read fTitel write fTitel;
  property fRTFText: String read fRTFText write fRTFText;
end;

procedure TDB.Read(Data: TObject)
begin
  if (Data) is TArtikel then
  begin
    Select(tbArtikel);
    TArtikel(Data).Titel:=getString('titel');
    TArtikel(Data).RTFText:=getBlob('artikeltext');
    ...
    ...
  end;
end;

procedure TForm1.Create....
var
  a: TArtikel;
begin
  {
  Angenommen, das Objekt hat eine maximale Größe von 100kb ;)
  Wo werden die 100kb reserviert?
  }

  a:=TArtikel.Create; //Schon hier?
  db.Read(a); //Oder erst hier, da die Daten aus der DB eingetragen werden?
  a.Free;
end;
Wenn das Objekt überhaupt eine feste Größe hat (was ich glaube durch die Angaben der Datentypen in der Klasse), wäre es toll zu wissen, wo die fiktiven 100kb tatsächlich reserviert werden. Denn: Wenn sie erst mit Abfragen der DB-Daten reserviert/genutzt werden, dann wäre es doch besser, erst die wichtigsten Daten zu laden und später einzelne Daten bei Bedarf nachzuladen.

Hier kommt es natürlich auf die Masse der Objekte an - das ist klar.

Vielen Dank
  Mit Zitat antworten Zitat