Access-o-Mania

Access-Forum (Deutsch/German) => Tabelle/Abfrage => Thema gestartet von: Apo1337 am Mai 14, 2009, 11:14:31

Titel: Problem mit m:n Beziehung
Beitrag von: Apo1337 am Mai 14, 2009, 11:14:31
Hallo liebe Community,

ich habe ein Problem mit einer m:n Beziehung.
Meine Tabellen sehen wie folgt aus:
Tabelle_Stellen: StN , StBeschreibung , StAnzahl , ...
Tabelle_Personal: BN , Name , Vorname , ....

nun hatte ich die tabellen mit einer zwischentabelle verbunden:
Tabelle_P_S: ID_P_S , StN , BN

die Verbindungen hatte ich mit referentieller Integrität etc.  und nun habe ich folgendes Problem:
Ich habe versucht in der Datenblattansicht versuchshalber mal die m:n Beziehung auszuprobieren und bereits beim ersten Datensatz in der Tabelle_P_S meckert er rum.
ID_P_S   BN    StN
  1           12      5

sobald ich die StN eingeben möchte kommt eine Fehlermeldung : "Der Datensatz kann nicht hinzugefügt oder geändert werden, da ein Datensatz in der Tabelle "Tabelle_Stellen" mit diesem Datensatz in Beziehung stehen muss." und der Tabelleninhalt wird nicht gespeichert.

Auch mit einem Unterdatenblatt in Tabelle_Personal kommt die Fehlermeldung, sobald ich versuche die StN einzugeben.

MfG Apo
Titel: Re: Problem mit m:n Beziehung
Beitrag von: MzKlMu am Mai 14, 2009, 11:21:13
Hallo,
Du kannst in der Zwischentabelle nur Daten hinzufügen wenn die Schlüsselfelder auch vorhanden sind. Das heist in der Stellentabelle muss ein Datensatz mit der ID 5 vorhanden sein und in der Personaltabelle ein Datensatz mit der ID 12.
Erst dann kann eine Datensatz in der Zwischentabelle angelegt werden.

Was auch richtig ist.
Titel: Re: Problem mit m:n Beziehung
Beitrag von: Apo1337 am Mai 14, 2009, 11:27:12
Ja danke dir,

hab ebend auch nochmal gesehen, dass die StN erst bei 200 irgendwas beginnt und es lag einfach daran, dass kein Datensatz mit der ID vorhanden war  :D
Titel: Re: Problem mit m:n Beziehung
Beitrag von: Apo1337 am Mai 25, 2009, 12:24:50
ok ich habe meine Datenbank nun eigentlich nach m:n mit aufgebaut, aber das scheint doch falsch gewesen zu sein.. zumindest erscheinen nun unter den "Stellen" statt 4 verschiedenen Bewerbern entweder 4 mal derselbe oder 4 leere Datensätze bei der jeweiligen Stelle etc.

Daher nochmal die Frage verallgemeinert:

ich habe folgende Tabellen
- "P_Stamm" mit "BN" als Schlüssel    'für Stammdaten von Bewerbern
- "P_AV" mit "BN" als Schlüssel          'für Arbeitsverträge(Einsätze) po Bewerber
- "P_S" mit "ID_P_S" als Primärschlüssel und "BN" und "StN" als Fremdschlüssel    'für m:n Verbindung von Stellen und Bewerbern, was ich gern über die Einsätze lösen würde
- "S_Stamm" mit "StN" als Schlüssel          'für Stammdaten von Stellen

das sieht nun so aus:  P_Stamm (1) - (1) P_AV (1) - (n) P_S (m) - (1) S_Stamm

mein Ziel ist es, dass auf 1 Bewerber mehrere Einsätze kommen und auf 1 Einsatz 1 Stelle, aber ich scheine eine Denkblockade zu haben  >:( 

ich habe überlegt, dass ich ja für mehrere Einsätze pro Bewerber entweder die Tabelle "P_S" weiter nutze oder diese lösche, in der Tabelle "P_AV" einfach den Primärschlüssel auf ein neues Feld namens "EinsN" (Einsatznummer) umändere und mit diesem dann die Verbindung zwischen "P_Stamm" und "S_Stamm" herstelle. Dabei würde ich mich über Hilfe allerdings freuen.

also in etwa so : P_Stamm (1) - (n) P_AV (1) - S_Stamm (1)   aber ich bin mir nicht sicher ob das so den gewünschten Effekt hat.

MfG
Apo
Titel: Re: Problem mit m:n Beziehung
Beitrag von: Apo1337 am Mai 28, 2009, 09:30:49
Ok m:n hab ich nun hinbekommen, das Thema kann geschlossen werden.

MfG Apo
Titel: Re: Problem mit m:n Beziehung
Beitrag von: jensebluemchen am Mai 12, 2011, 15:41:41
Sorry