Hallo DPler!
Ich habe ein paar Grundsätzliche Fragen zu der Art und Weise wie ich meine Datenbankanwendung am besten angehe.
Ich habe mich nun mit Ach und Krach in dieses Firebird Mysterium geklickt und getippt um es jetzt tatsächlich geschafft zu haben programmatisch eine Datenbank und einen darin enthaltenen table zu erstellen. Die Dokumentation zu den ganzen Kram ist unter aller Sau, finde ich. Aber das tut ja erstmal nix zur Sache.
Was ich mich jetzt frage ist: wie handhabe ich die Datenbank.
Ich bin also dabei das Moviecontrol 2 Projekt anzugehen.
Das bedeutet jede Menge Datensätze die auch Multimedia enthalten können und wo viel rumsortiert und gefiltert wird, etc.
Soll ich nun die Datenbank einmal öffnen, alle Daten auslesen und in den Speicher lesen, vielleicht mit Ausnahme der BLOB Felder, und dann im Speicher arbeiten? Oder sollte ich besser die Verbindung zur Datenbank durchweg bestehen lassen und alle Datenbank Anfragen des GUIs über
SQL statements an die Datenbank geben? Also zum Beispiel einen Filter nach Schauspielern über ein SELECT statement an die Datenbank geben und damit dann die Ausgabe füllen?
Die nächste Frage:
Ich will dem Benutzer die Möglichkeit geben den Inhalt der tables weitgehend selber bestimmen zu können. D.h. ich will, dass er beliebige Datenfelder vorgeben kann und den Datentyp manuell festlegen kann.
Das Erstellen der tables ist ja nicht das Problem, sondern wie ich das ganze dann in meinem Programm handhabe.
Ich hatte eigentlich vorgehabt das ganze über Filmlisten - und Movieobjekte zu implementieren, allerdings wüsste ich garnicht wie ich ein Movieobjekt jetzt implementieren sollte, wenn ich nicht von vornherein weiss, wie die Daten aussehen, die das Objekt beherbergen soll. Dazu fällt mir eigentlich nur ein array ein.
Aber wie finde ich denn im Programm heraus wie der Benutzer den table erstellt hat, damit ich auch mit den Daten aus der Datenbank umgehen kann?
Hm das wars glaube ich erstmal.
Gruß