AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Daten aus Datenbank in Speicher halten?!
Thema durchsuchen
Ansicht
Themen-Optionen

Daten aus Datenbank in Speicher halten?!

Ein Thema von hans ditter · begonnen am 2. Jan 2012 · letzter Beitrag vom 12. Jan 2012
 
Benutzerbild von RWarnecke
RWarnecke

Registriert seit: 31. Dez 2004
Ort: Stuttgart
4.408 Beiträge
 
Delphi XE8 Enterprise
 
#14

AW: Daten aus Datenbank in Speicher halten?!

  Alt 7. Jan 2012, 21:41
Die ObjectList hingegen enthält alle instanziierten Klassen, somit also alle Datensätze der Tabelle?!
Jaein, es kommt drauf an, wie Du Sie füllst.

- Wird das nich bei größeren Projekten extrem Speicherfressend? Oder wird da immer nur ein Teil der Daten geladen, sozusagen +- 10 Datensätze um den angefragten herum?
Der Speicherverbauch ist bis jetzt immer im Rahmen geblieben, egal wieviele Datensätze ich geladen hatte in der TObjectList.

- Wenn man die Klasse instanziiert, dann muss sie ja einer Variable zugeordnet werden, ist da dann der Ausdruck
Delphi-Quellcode:
var obj: TKlasse;
begin
  New(obj);
  ...
end;
der richtige Ansatzpunkt?
Du nimmst den Quelltext aus meinen obenstehenden Link. Und so fülle ich die TObjectList :
Delphi-Quellcode:
procedure TDM_Main.SetAnsprechpartnerListe(Kundennr : string);
begin
  if AnsprechpartnerListe.Count > 0 then
    AnsprechpartnerListe.Clear;
  with UniQuery_Ansprechpartner do
  begin
    SQL.Text := 'SELECT * FROM Ansprechpartner WHERE Kundennr = :KundenID;';
    ParamByName('KundenID').AsString := Kundennr;
    Open;
    while not Eof do
    begin
      AnsprechpartnerListe.Add(TAnsprechpartner.Create);
      with TAnsprechpartner(AnsprechpartnerListe.Last) do
      begin
        KundenNr := FieldByName('Kundennr').AsString;
        Vorname := FieldByName('Vorname').AsString;
        Nachname := FieldByName('Nachname').AsString;
        Telefon1 := FieldByName('Telefon1').AsString;
        Telefon2 := FieldByName('Telefon2').AsString;
        Fax := FieldByName('Fax').AsString;
        Mobil := FieldByName('Mobil').AsString;
        EMail := FieldByName('EMail').AsString;
      end;
      Next;
    end;
    Close;
  end;
end;
- Kann man bei Erzeugung einer neuen Klasse selbige auch automatisch an die ObjectList anhängen? Passiert dies bei deinem Bsp. (dein Link) über das NotifyEvent?
Das NotifyEvent nutze ich dazu, wenn Änderungen in der TObjectList gemacht wurden diese in die Datenbank zu übertragen.
Rolf Warnecke
App4Mission
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:55 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz