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
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.154 Beiträge
 
Delphi 10.3 Rio
 
#1

AW: Daten aus Datenbank in Speicher halten?!

  Alt 7. Jan 2012, 03:33
Wie wäre es mit:

'Select * from [$TABLENAME] where FILMNAME LIKE '''+Sucher.Text+'%'' OR SCHAUSPIELER LIKE '''+Sucher.Text+'%'' OR WAHTEVER LIKE '''+Sucher.Text+'%''');

Mavarik
  Mit Zitat antworten Zitat
Benutzerbild von RWarnecke
RWarnecke

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

AW: Daten aus Datenbank in Speicher halten?!

  Alt 7. Jan 2012, 09:14
@Sharky: Das war letztlich auch das, was ich problematisch gesehen hab. Die beste Lösung sieht für mich im Moment wie die Antwort von RWarnecke mit Klassen und ObjectList, obwohl mir die Umsetzung noch nicht ganz klar ist...

Was hat die Klasse zu tun? Holt die die Daten aus der DB oder nimmt sie die Daten eines Datensatzes auf oder wie? Und was speicher ich in der ObjectList? Pointer auf die Klasse? Oder irgendwas anderes?

LG; hans ditter
Unter diesem Link habe ich mal ein Beispiel gepostet. Die Klasse enthält die Spalten der Tabelle aus der Datenbank. Die Klasse wird dann in der TObjectList gespeichert. Somit enthält die TObjectList alle Datensätze der Tabelle.
Rolf Warnecke
App4Mission
  Mit Zitat antworten Zitat
Benutzerbild von ConnorMcLeod
ConnorMcLeod

Registriert seit: 13. Okt 2010
Ort: Bayern
490 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: Daten aus Datenbank in Speicher halten?!

  Alt 7. Jan 2012, 09:19
Wenn alles in den Speicher passt, dann könnten MemTables z.B. von JEDI helfen.
Nr.1 Delphi-Tool: [F7]
  Mit Zitat antworten Zitat
hans ditter

Registriert seit: 25. Jun 2010
Ort: Niedersachsen
263 Beiträge
 
Turbo Delphi für Win32
 
#4

AW: Daten aus Datenbank in Speicher halten?!

  Alt 7. Jan 2012, 17:24
@Connor: Bei meinem Projekt dürfte das wohl noch passen, aber wenn es irgendwann mal größer werden sollte? Ganz allgemein: Wie wird denn das z.B. auch bei den datensensitiven Komponenten gemacht? Halten die die Daten auch die ganze Zeit im Speicher oder sozusagen "just-in-time"?

@RWarnecke: Du sagtest es ja schon, aber nur um sicherzugehen... Die Klassen enthält alle Felder eines Datensatzes aus der Tabelle. Die ObjectList hingegen enthält alle instanziierten Klassen, somit also alle Datensätze der Tabelle?!

- 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?

- 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?

- 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?

LG und vielen Dank schonmal für die Antworten!

hans ditter

EDIT:

Mir ist eben noch ein Gedanke gekommen. Jetzt hab ich zwar schön die Grundlage geschaffen, die Daten im Speicher bereit zu halten. Aber wie bekomme ich die überhaupt aus der Datenbank raus? Schreibt man dazu einen alleinstehenden Extracode?
Meine Idee war, eine dritte Klasse 'Database' (o.ä.) zu entwerfen, die die ObjectList enthält und außerdem Methoden bereitstellt, Datensätze zu ändern, zu löschen oder hinzuzufügen. Meiner Meinung nach würde das die Möglichkeit geben, relativ leicht später Datensätze zu bearbeiten. Z.B. müsste man dann im Hauptprogrammcode nur noch ein TMovie-Objekt erzeugen, welches, durch TDatabase, automatisch der Datenbank hinzugefügt wird.

Was haltet ihr von der Idee?
RudiRüsselSeineSocketKomponente - SirRufo (--> Chat mit PM)

Delphi Programming is the best one!

Geändert von hans ditter ( 7. Jan 2012 um 18:42 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 06:47 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