Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Problem ändern von Daten über Abfrage

Begonnen von TomJones81, März 25, 2020, 11:03:08

⏪ vorheriges - nächstes ⏩

TomJones81

Hallo Zusammen,

ich habe eine Frage. Ich habe auch schon eine Lösung zu dieser Frage, mir fehlt im Prinzip nur das Wieso.

Problem:
Ich habe 2 Tabellen tblEigenschaften und tblKonfQuelle
In der tblEigenschaften sind 3 ID-Felder (unabhängig vom Primärschlüssel-ID) die ich mit der tblKonfQuelle mit einer n:1 Beziehung verknüpft habe. Wenn man sich die Beziehung ansieht, dann gehen von der tblKonfQuelle 3 Beziehungstränge (1:n) auf verschiedene ID-Felder in der Tabelle tblEigenschaften. Später möchte ich über ein Formular diese IDs und alle anderen Werte über die Abfrage ändern. Allerdings wenn ich mir die Auswertung der Abfrage anschaue, bekomme ich zwar das richtige Ergebnis, kann aber die Werte nicht ändern.

Lösung:
Wenn ich allerdings nun in der Beziehungsansicht der Abfrage mir diese Tabelle tblKonfQuelle 3x in die Abfrage hole (tblKonfQuelle, tblKonfQuelle_1 und tblKonfQuelle_2) diese einzeln mit den IDs aus der tblEigenschaften mit einer 1:n Beziehung verbinde, kann ich auf einmal in der Abfrage die Werte ändern.

Kann mir einer erklären wieso das ist? Mein Verständnis ist, ich habe ein und die selbe Tabelle aus der ich Informationen über eine ID hole, wieso muss ich über die Beziehungsansicht diese Tabelle 3x mir anzeigen lassen und jeweils eine einzelne Beziehung auf die Haupttabelle in der ich die Werte ändern möchte.
Vielen Dank schon mal für die Feedbacks!

MzKlMu

Hallo,
das ist normal und auch richtig so.
Du musst ja die 3 Werte unterscheiden können, es gibt ja nur ein Primärschlüsselfeld.
Access legt daher virtuelle Tabellen und versieht die doppelten Tabellen mit einem Aliasnamen (_1, _2)
Dem Feldnamen muss dann auch der Tabellenname vorangestellt werden, damit die Inhalte unterschieden werden können.
tblKonfQuelle!Feldname
tblKonfQuelle_1!Feldname
tblKonfQuelle_2!Feldname

Da gibt es noch eine Tücke. Wenn Du mit den richtigen Beziehungen (also den 3 Tabellen tblKonfQuelle, tblKonfQuelle_1 und tblKonfQuelle_2) eine Abfrage erstellst, so sind dann zunächst die Verknüpfungen falsch. Du musst dann auch die Tabelle noch 2x aufnehmen und die Verknüpfungen manuell nach dem Vorbild der Beziehungen ändern.
Gruß Klaus