AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken C# m:n Beziehung oder Redundanz?
Thema durchsuchen
Ansicht
Themen-Optionen

m:n Beziehung oder Redundanz?

Ein Thema von EConvertError · begonnen am 7. Mai 2008 · letzter Beitrag vom 8. Mai 2008
Antwort Antwort
EConvertError

Registriert seit: 29. Sep 2003
Ort: Österreich
230 Beiträge
 
#1

m:n Beziehung oder Redundanz?

  Alt 7. Mai 2008, 11:40
Datenbank: Access/MS SQL Server 2005 Express • Zugriff über: ADO.NET
Hallo!

Ich versuche mich gerade an einem kleinen Adressbuch, um ein wenig in ADO.NET mit WPF hineinzuschnuppern. Meine Frage bezieht sich jedoch auf das Datenbankdesign (deswegen ist das DBMS, die Sprache und das Framework nebensächlich). Ich möchte nämlich die Kontakte im Adressbuch mit Stichwörtern, Tags versehen: z.B. geschäftlich, privat, Freunde, etc.

Jedem Kontakt soll man mehrere Stichwörter zuordnen können, was dann zu einer m:n Beziehung führen würde (sofern man die Stichwörter in einer eigenen Tabelle hat). Jetzt besteht aber die Stichwörter-Tabelle genau aus 2 Spalten: ID (PK), Stichwort. Damit es sich "ein wenig lohnt" habe ich noch "Bemerkung/Beschreibung" hinzugefügt.

In meinem Buch über Datenbankprogrammierung steht zum Thema Normalisierung "Benützen Sie Ihren Hausverstand".

An sich klar, aber ab wann lohnt sich jetzt ungefähr so eine m:n Beziehung und wann sollte man eher Redundanz in Kauf nehmen? Wann ist der administrative Aufwand, das verlinken der Tabellen etc. zu hoch, etc.

Gibt es da eine Faustregel?

Ich könnte ja auch einfach die Stichwörter in eine einzige Spalte werfen und per Volltextsuche das gleiche Ergebnis erzielen (die Stichwörter dienen letztendlich zur Suche...). Oder eine ganz andere Idee?

Vielen Dank,
Andreas
Andreas N.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: m:n Beziehung oder Redundanz?

  Alt 7. Mai 2008, 11:42
Wenn du es sauber machen willst als eigene Relation mit einer n:m Beziehung
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von mikhal
mikhal

Registriert seit: 11. Sep 2003
Ort: Linz am Rhein
796 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: m:n Beziehung oder Redundanz?

  Alt 7. Mai 2008, 11:48
Gerade bei Stichwort bekommst du ein Problem bei der Schreibweise von Stichwörtern:
Delphin - Delfin, Schiffahrt - Schifffahrt...

Hast du eine Treffertabelle für deine Stichwörter, kommt nur noch eine Schreibweise in Frage und kann das Stichwort mit geringem Aufwand sogar an die neue Rechtschreibung angepaßt werden.

Grüße
Mikhal
Michael Kraemer
Computer erleichtern die Arbeit...
...und die Erde ist eine Scheibe!
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.606 Beiträge
 
#4

Re: m:n Beziehung oder Redundanz?

  Alt 7. Mai 2008, 11:49
Zum Thema 'Hausverstand':

Wird es - vielleicht irgendwann mal - nötig sein, ein Stichwort zu ändern oder zu löschen? Also global?
Denn dann ist der (programmiertechnische und der rechnerische) Aufwand nämlich recht hoch: Du musst dann JEDEN einzelnen Datensatz anpacken, gucken ob er das Stichwort enthält, und die Änderung / Entfernung für jeden einzelnen Datensatz durchführen.

Wenn Du es richtig (^^) machst, ist das nur ein einzelnes Delete oder Update-Statement.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
EConvertError

Registriert seit: 29. Sep 2003
Ort: Österreich
230 Beiträge
 
#5

Re: m:n Beziehung oder Redundanz?

  Alt 8. Mai 2008, 08:53
Verstehe. Somit ist klar, dass die saubere m:n Beziehung zum Zug kommt.

Danke für eure Hilfe,
Andreas
Andreas N.
  Mit Zitat antworten Zitat
Antwort Antwort


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 16:59 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz