Problem bei n:m Beziehung mit Klassen ACCESS VB.NET

vibe0476

Grünschnabel
Hi,
ob ich hier richtig bin, weiss ich nicht so genau...

ich hab da mal eine paar Fragen. Vielleicht als erstes mal ne kurze Erklärung zu meinem Problem.

Ich programmiere in VB.NET und nutze ADO für die Datenanbindung. Alles schön soweit. Verbindung steht, Daten kommen rein...

Klassenstruktur:
Klasse Kunde ( ID, NAME, ... ADRESSEN_LISTE)
Klasse Lieferant ( ID, NAME, EX_KD_NR, ... ADRESSEN_LISTE)
Klasse Adresse ( ID,STR,PLZ, ... )

Datenbank: ACCESS
t_Kunde ( ID; NAME )
t_Lieferant ( ID; NAME )
t_Adresse (ID; STR; PLZ )

Da ja ein Kunde mehrere Adressen haben kann und ein Lieferant ja auch, habe ich weitere Tabellen.
Verknüpfungstabellen
kunde_adresse ( KUNDE_ID, ADRESSE_ID )
lieferant_adresse ( LIEFERANT_ID, ADRESSE_ID )

Sind ja dann n:m Beziehungen.
Beides mal also eine 1:n Beziehung auf die Verknüpfungstabellen.

Refrenzielle Integrität.

Sobald ich ein Kunde oder Lieferant erzeuge ( Daten kommen aus Datenbank )
erstellt das Objekt auch eine Liste mit Adressen.
Also einen Join auf die Verknüpfungstabellen.

Geht, alles ist noch toll.

Nun zu meinem Problem:
Wenn ich dann aber Daten hinzufügen oder ändern will, kommt:
Der Datensatz kann nicht gelöscht oder geändert werden, da die Tabelle 'kunde_adresse' in Beziehung stehende Datensätze enthält.

So langsam bin ich echt am verzweifeln und frage mich ob ich das Klassenmodell von mir überhaupt so in ein Datenbankmodell übernehmen kann.
Oder macht es mehr Sinn, keine Verknüpfungstabellen zu nutzen sondern der Tabelle t_Adresse noch die Kunde_ID und die Adresse_ID zu geben, und wenn ich dann speicher, eines der beiden Felder fülle mit der ID des Objekts und die andere auf NULL setze.

Wäre nett wenn mir jemand auf die Sprünge helfen könnte.

Danke Rudi
 

Neue Beiträge

Zurück