Am 26. Jul 2005 um 07:11 Uhr schrieb Stefan Mettenbrink:
Aber, wie lege ich eine Variable innerhalb der Datenbank als
Array an?
wie soll das aussehen und was willst Du eigentlich machen? (für mein
Verständnis)
Bisher hatte ich ein Array in dem ich verschieden viele Werte sichern
konnte. Dieses möchte ich nun in eine Variable innerhalb einer Tabelle
sichern. Mit den Möglichkeiten, die mir auch ein Array bietet (append,
remove, Zugriff über Index).
Da die Angaben immer noch sehr vage ist vielleicht folgendes:
Nicht immer ist eine Datenbank die Lösung, aber für folgendes
sicherlich.
Wichtig bei einer Datenbank ist im Vorfeld eine Normalisierung. D.h.
Du legst fest welche Daten in welche Tabelle müssen.
z.B. Du möchtest eine Adressdatenbank anlegen.
Lösung 1:
Jetzt kannst Du eine einzige Tabelle anlegen in der alle Daten liegen
(IMHO sehr schlecht) oder
Lösung 2:
Du legst 2 Tabellen an. Eine für die Adressen mit einem Link zu einer
2. Tabelle mit den Länderbezeichnungen (IMHO gut)
Lösung 3:
Oder 3 Tabellen mit Adressen, Länderbezeichnungen und einer dritten
Tabelle mit PLZ zu Ortsbezeichnung (IMHO gut bis muss nicht unbedingt
sein.
Problem in Lösung 1 in manchen Adressen steht nun blöderweise
Deutschland, BRD, Bundesrep. Deutschland etc drin, was eigentlich
immer das selbe sein sollte. Du kannst also nicht alle Adressen mit
dem selben Land sicher finden.
Problem in Lösung 2 Du hast das selbe Problem wie in Lösung 1 jedoch
mit den Orten, falls das für Dich wichtig ist, musst Du Lösung 3 nehmen.
In Valentina wird jedem Datensatz eine eindeutige ID vergeben (macht
die Datenbank), die dann wiederum in den Referenztabellen abgelegt
werden muss. Die Datenbank kann mir gewährleisten, dass keine
benötigten/verknüpften Datensätze ausversehen gelöscht werden können/
dürfen.
Ich hoffe das hilft etwas weiter.
In meinem eigenen Programm habe ich am Anfang auch mit Arrays
gearbeitet und bin dann auf eine Datenbank umgestiegen. Bei
zunehmender Datenmenge wurde das Programm mit Arrays immer langsamer,
immer größer und immer unhandlicher. In der Datenbank habe ich eine
sehr tief gehende Normalisierung durchgeführt. Mein Programm ist eine
private Finanzverwaltung und es gibt Tabellen für
Konten, Kategorieen, Kontengruppen, Kategoriegruppen, Daueraufträge,
Buchungen etc.
Verbunden sind die Datensätze immer über die IDs der Datensätze in
den einzelnen Tabellen. Datensätze können INSERT, DELETE oder UPDATE
werden ich kann mir Datenranges, einzelne Daten anhand von ID oder
von eineindeutigen Informationen selektieren und auslesen.
Lösungsmöglichkeiten gibt es viele.
Um Dir dahingehend weiterhelfen zu können, dass ich sage, ich würde
es so oder so machen, muss ich wissen worum es geht. Die bisher von
Dir gelieferten Informationen sind hierzu viel zu wenig um eine Idee
zu entwickeln (Sorry). Wenn es darum geht unzusammenhängende
Variablen zwischen zu speichern, dann würde ich beim derzeitigen
Wissensstand sagen, dass dafür eine Datenbank vielleicht nicht so
geeignet ist, bei den von mir benannten Beispielen (und vielen
anderen auch) ist jedoch eine Datenbanklösung definitiv die Beste und
bei steigender Datenmenge schnellste Lösung.
Ciao
Claudius
--
G4/733 QS / MacOS X 10.4de / RB 5.5.5/ Valentina 1.10.0 & 2.0.4
Homepage http://www.ClaSai.de
iChat ryhoruk
RealBasic ListBoxes: [ I feel the need...the need for speed!!! ]
|