Stefan Weigel schrieb:
Hallo Lex,

office.mailingli...@ark-berlin.info schrieb:

...
varchar(255) "ProjektNr" (inhalt des feldes): 0806, 0902, 0807
...
wenn nun im feld nur eine projektNr steht funktioniert auch alles, hat
der delingquent allerdings 2 oder mehr projekte eingetragen, taucht er
garnicht mehr in der abfrage auf !

woran kann es liegen ?

Das Problem entsteht durch einen Verstoß gegen Regeln der Normalformenlehre (http://de.wikipedia.org/wiki/Normalisierung_(Datenbank)). Man kann das in diesem konkreten Fall zwar lösen, wie von Edgar gezeigt. Im Allgemeinen aber bezahlt man fehlende Normalisierung mit einem höheren Aufwand bei einer späteren Weiterentwicklung und mit geringerer Robustheit gegen fehlerhafte Eingaben.

Wie würdest Du beispielsweise die Aufgabe lösen, wenn die Anzahl der Projekte jedes Delinquenten gesucht ist? Wie verhinderst Du ungültige Angaben im Feld ProjektNr, die durch banale Tippfehler entstehen können? Wie stellst Du sicher, dass nur tatsächlich existierende Projektnummern eingetragen werden? Und so weiter.

Du hast zwischen Projekten und Delinquenten eine n-zu-m-Beziehung, die Du IMO besser durch drei in Relation stehende Tabellen mit referenzieller Integrität abbilden solltest.

Ja, genau! So muss man das einem Menschen, der offensichtlich einer einfache Tabelle in eine Datenbank übernommen hat, erklären. Vielleicht hilft dieser Link http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/index.htm da etwas besser, dein Link zeigt auf die Wikipedia Suchseite, und bietet mehrere Artikel zur auswahl.

Und noch etwas (zum Thema): Irgendwann, mit der Anzahl der Projekte an denen eine Person teilnimmt, ist mit den Datenfeld VarChar(255) auch mal ende - sprich der Datensatz nimmt keine Werte mehr auf.


mfg
Volker

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org
For additional commands, e-mail: users-h...@de.openoffice.org

Antwort per Email an