Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Beziehungsdef. im Bez.fenster und im Abfrageentwurf
zurück: Formular: Preis aus verschiedenen ArtikelPreisen zuordnen weiter: Wert von anderer Tabelle übernehmen Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Feedback Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
JoeM
Gast


Verfasst am:
01. Dez 2009, 12:39
Rufname:

Beziehungsdef. im Bez.fenster und im Abfrageentwurf - Beziehungsdef. im Bez.fenster und im Abfrageentwurf

Nach oben
       Version: Office 2k (2000)

Hallo zusammen,

ich habe folgende Frage zur Definition von Beziehungen:

Worin liegt der Unterschied zwischen der Definition von Beziehungen (zw. Tabellen), wenn man die Beziehungen im Beziehungsfenster festlegt im Vergleich zur Definition von Beziehungen im Abfrageentwurf einer Abfrage??

Welche Definitionen haben Vorrang, wenn bspw. die Beziehungen zw. Tabellen im Bez.fenster und im Abfrageentwurf einer Abfrage unterschiedlich definiert sind?

Danke und Grüße,
Jo
KlausMz
Moderator Access


Verfasst am:
01. Dez 2009, 12:59
Rufname:
Wohnort: Irgendwo in der Pfalz


AW: Beziehungsdef. im Bez.fenster und im Abfrageentwurf - AW: Beziehungsdef. im Bez.fenster und im Abfrageentwurf

Nach oben
       Version: Office 2k (2000)

Hallo,
im Beziehungsfenster kann man weitere Einstellungen für die Beziehungen vornehmen. Referentielle Integrität, Aktualisierungsweitergabe, Löschweitergabe.
Im Beziehungsfenser erhält man auch einen Gesamtüberblick über die Beziehungen der DB. Eine Abfrage ist ja in der Regel nur ein Ausschnitt. Ein weitere Vorteil, ist, dass die die im Beziehungsfenster angelegten Beziehungen in Abfrageentwürfen übernommen werden. Auch Ufos werden gleich richtig verknüpft.
Im Abfragefenster können auch dann Left und Right Join eingestellt werden.
Die (geänderten) Beziehungen im Abfragefenster haben Vorrang.

_________________
Gruß
Klaus . . . . . Feedback wäre wünschenswert.
Ich möchte bitte keine unaufgeforderten PN. Fragen bitte im Forum.
JoeM
Gast


Verfasst am:
02. Dez 2009, 13:31
Rufname:

AW: Beziehungsdef. im Bez.fenster und im Abfrageentwurf - AW: Beziehungsdef. im Bez.fenster und im Abfrageentwurf

Nach oben
       Version: Office 2k (2000)

Vielen Dank für die Antwort! Alle Unklarheiten beseitigt! Smile
Jo
tk6
SAP-Consultant


Verfasst am:
02. Dez 2009, 14:57
Rufname:

AW: Beziehungsdef. im Bez.fenster und im Abfrageentwurf - AW: Beziehungsdef. im Bez.fenster und im Abfrageentwurf

Nach oben
       Version: Office 2k (2000)

Für alle, deren Unklarheiten noch nicht beseitigt sind, die Antwort auf die Frage, so wie sie gestellt war:

Die Beziehungen im Beziehungsfenster und die Joins in Abfragen sollten sehr gut unterschieden werden:

1. Es fängt schon mit dem Begriff an: "Beziehungen" bestehen objektiv durch die Daten in den Tabellen, wobei hier immer eine "Restunsicherheit" besteht, die nur durch eine Überprüfung der tatsächlichen Sachverhalte möglich ist. Ein Beispiel: Wenn in einer Tabelle Orte und PLZ auftauchen (z.B. bei Adressen) und in einer anderen Tabelle eine einfache Auflistung von PLZ/Ort-Kombinationen (in zwei Spalten) plus einer einfachen ID, dann besteht zwischen diesen beiden Tabellen, "ob man das will oder nicht" (eine einfache Übersetzung von "objektiv") eine Beziehung, und zwar über den zusammengesetzten Schlüssel PLZ+Ort.

2. Um solche Beziehungen für die Auswertung von Daten nutzen zu können, sollten die Daten eine bestimmte "Güte" aufweisen:
- mindestens einer der beiden Schlüssel sollte in einer der beiden Tabellen ein eindeutiger Schlüssel sein (dazu muß er nicht Primärschlüssel sein, ein - in diesem Falle zusammengesetzter - auf eindeutig eingestellter Index reicht);
- in der Tabelle, die auf der "Einser-Seite" (also die Seite, wo der Schlüssel eindeutig ist) steht, sollten alle Ausprägungen/Kombinationen auftauchen, die in der anderen Tabelle verwendet werden. Das bezeichnet man als referentielle Integrität.
Andere Datenbankanwendungen (z.B. die "Bibliothek" von SAP, die eine virtuelle Datenbank auf Grundlage eines leistungsstarken Datenbanksystems wie bspw. Oracle ist) setzen bei der Anlage von Tabellen z.B. die Verwendung von sog. Datentypen voraus und verlangen bei der Verwendung von Feldern als Fremdschlüssel das Hinterlegen einer Prüftabelle zur Sicherstellung der refInt.

3. Das Tool "Beziehungsfenster" ist eine Hilfe, mit der Access versucht, dem User zu helfen, nicht an seiner eigenen Unüberlegtheit zu scheitern. Es wird beim Anlegen von Beziehungen mit referentieller Integrität automatisch geprüft, ob die Daten "das hergeben" - gibt es in den beteiligten Tabellen Daten, die diesem Kriterium nicht genügen, wird die Beziehung nicht mit refInt hergestellt, ebenso, wenn die Eindeutigkeitsbedingungen in der "Einser-Tabelle" nicht erfüllt sind (Access schießt da über das notwendige aber ein wenig hinaus, indem es sich auf der "Einser-Seite" nicht mit einem eindeutigen Index zufriedengibt, sondern einen so eingestellten Primärschlüssel verlangt, also das "Schlüsselchen-Symbol" in den Einstellungen zur Tabelle).

4. Was nutzt uns das? Nutzen und Schaden "erleben" wir bei der Erstellung von Abfragen.
Zuerst der Nutzen: Dazu muß man kurz auf den Unterschied zwischen "Inner" und "Outer" Joins hinweisen (Erläuterungen dazu gibt es zuhauf woanders). Das hier gesagte gilt nämlich nur für INNER JOINs: Genügen die Daten der Anforderung der refInt nicht, kann ein JOIN nämlich ins Leere greifen. Im obigen Beispiel würde z.B. der Versuch, in einem Erfassungsformular für Adressen die richtige PLZ/Ort-Kombination über eine Abfrage zu finden, dazu führen, daß entweder "nichts kommt" oder - wenn die Anwendung vernünftig programmiert ist - eine Meldung wie "diese PLZ ist nicht bekannt". Ist aber über das Beziehungsfenster entsprechend gepflegt, bringt "wenigstens" Access eine Meldung. Access würde sich in diesem Fall weigern, den Datensatz überhaupt zu speichern.

Nun zum Schaden und damit wieder zurück zur Ausgangsfrage:
Access setzt beim Erstellen einer neuen Abfrage Joins automatisch den Beziehungslinien im Bez.diagramm folgend. Das kann katastrophale Folgen haben.

Deshalb kann ich nur einen Rat geben: Wenn man nicht schon das Beziehungsfenster links liegen läßt, sollte man beim Öffnen einer Abfrage solche "automatisch erstellten JOINs" sofort entfernen!

Microsoft versucht nunmal, mit solchen Tools und "Hilfen", "Assistenten" und anderen Automatismen auch dem User, der meint, eine Datenbank erstellen zu können, ohne sich mit der Datenbankentwicklung ein wenig auseinandergesetzt zu haben, den Eindruck zu vermitteln, daß das ginge.

Das muß man verstehen, man muß aber nicht darauf hereinfallen. Ansonsten bleibt einem nämlich im Schlimmsten Fall nichts anderes übrig als zu konstatieren:

"Herr vergib Ihnen, denn sie wissen nicht, was sie tun!"


Edit: Auch, wenn sich dieser Beitrag zunächst mal als Ergänzung zu Klaus' Beitrag versteht, widersprechen sich die Beiträge in einem sehr entscheidenden Punkt: Klaus sagt
KlausMz - 01. Dez 2009, 11:59 hat folgendes geschrieben:
Ein weiterer Vorteil, ist, dass die im Beziehungsfenster angelegten Beziehungen in Abfrageentwürfen übernommen werden. Auch Ufos werden gleich richtig verknüpft.
(kursive Hervorh. sind von mir).
Ich sage: Alle übernommenen Beziehungen (es sind keine Beziehungen, es sind Joins) weglöschen!!!!!! und erstmal überlegen: Welche Joins brauche ich?

Das ist schon ein erheblicher Unterschied.

Wichtig und richtig fand ich diesen Hinweis von Klaus:
KlausMz - 01. Dez 2009, 11:59 hat folgendes geschrieben:
Die (geänderten) Beziehungen im Abfragefenster haben Vorrang.

_________________
Beste Grüße

tk
KlausMz
Moderator Access


Verfasst am:
03. Dez 2009, 20:10
Rufname:
Wohnort: Irgendwo in der Pfalz

AW: Beziehungsdef. im Bez.fenster und im Abfrageentwurf - AW: Beziehungsdef. im Bez.fenster und im Abfrageentwurf

Nach oben
       Version: Office 2k (2000)

Hallo,
Auch ein Join stellt eine Beziehung (Verbindung) zwischen 2 Tabelle her. Aber ich werde jetzt auch den Begriff Join verwenden.
TK6 hat folgendes geschrieben:
Deshalb kann ich nur einen Rat geben: Wenn man nicht schon das Beziehungsfenster links liegen läßt, sollte man beim Öffnen einer Abfrage solche "automatisch erstellten JOINs" sofort entfernen!
Warum sollte ich das tun, erst mal löschen. In den meisten Fällen stimmen die so erstellten Beziehungen (Joins). Bei z.B. der sehr häufigen n:m Beziehung wird in der Abfrage für das Ufo die Zwischentabelle und die Detailtabelle dazu gleich mit den richtigen Joins erstellt, warum sollte ich diese sofort wieder löschen, um diese anschließend gleich wieder genau so erstellen zu müssen? Da sehe ich absolut keinen Sinn dahinter.
Wer sich korrekt mit Access beschäftigt, weis was die Linien bedeuten und kann entsprechend reagieren. Wenn er sich nicht damit auskennt, nutzt ihm auch das löschen nichts, weil er gar nicht weis was dann zu tun ist.

@TK6
Kannst Du mir mal ein Beispiel nennen, wo die gelöschten Joins in der Abfrage anders als vorgeschlagen erstellt werden müssen? Den Beziehungstyp kann ich auch ohne Löschen ändern.

_________________
Gruß
Klaus . . . . . Feedback wäre wünschenswert.
Ich möchte bitte keine unaufgeforderten PN. Fragen bitte im Forum.
tk6
SAP-Consultant


Verfasst am:
03. Dez 2009, 22:34
Rufname:


Re: AW: Beziehungsdef. im Bez.fenster und im Abfrageentwurf - Re: AW: Beziehungsdef. im Bez.fenster und im Abfrageentwurf

Nach oben
       Version: Office 2k (2000)

KlausMz - 03. Dez 2009, 19:10 hat folgendes geschrieben:
... Aber ich werde jetzt auch den Begriff Join verwenden.
Braver Kerl... Wink
Zitat:
Warum sollte ich das tun, erst mal löschen.
Vorweg: Es hat auch ein wenig damit zu tun, wie man arbeitet. Ich bin halt der Meinung, daß man wissen sollte, was man tut, und es bewußt tun sollte. Aber es hat noch mehr Vorteile.
Zitat:
In den meisten Fällen stimmen die so erstellten Beziehungen (Joins).
Das ist ja das gefährliche: Kontrolliert man sie einfach nur, ist der 1. ok, der 2. usw. - Kommt dann einer, der falsch ist, übersieht man ihn in der Eile.
Zitat:
... warum sollte ich diese sofort wieder löschen, um diese anschließend gleich wieder genau so erstellen zu müssen?
Um es bewußt zu tun. Man kann sie sich z.B. beim Löschen notieren, wenn es nicht völlig klare Fälle sind. Natürlich wird man irgendwann dazu übergehen, diese vollkommen klaren Fälle von vornherein stehen zu lassen.
Zitat:
Wer sich korrekt mit Access beschäftigt, weis was die Linien bedeuten und kann entsprechend reagieren.
Eben, und es nicht eine dumme Maschine machen lassen.
Zitat:
Wenn er sich nicht damit auskennt, nutzt ihm auch das löschen nichts, weil er gar nicht weis was dann zu tun ist.
Dann sollte er eh die Finger davon lassen, und erstmal ein Tutorial machen oder was auch immer oder im Office-Loesung-Forum seine Fragen stellen...

Zitat:
@TK6
Kannst Du mir mal ein Beispiel nennen, wo die gelöschten Joins in der Abfrage anders als vorgeschlagen erstellt werden müssen?
Ob du es nun glaubst oder nicht, fast zur gleichen Zeit, als du deinen Beitrag geschrieben hast, habe ich mir überlegt hier nochmal ein Beispiel reinzustellen. Muß Gedankenübertragung gewesen sein... Wink

Ich habe auch schon eins, aber ich hab's aus einer vorhandenen DB "rausschnippeln" müssen, das braucht noch etwas Zeit.

Aber versprochen ist versprochen... Very Happy

_________________
Beste Grüße

tk
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Access Formulare: Formular in einzelnem Fenster öffenen 4 Access-hilfe 188 10. Aug 2012, 00:10
Beaker s.a. Formular in einzelnem Fenster öffenen
Keine neuen Beiträge Access Formulare: Popup Fenster, wenn man über bestimmtes Element fährt 4 MrMojoRisin 392 18. Okt 2011, 09:39
MrMojoRisin Popup Fenster, wenn man über bestimmtes Element fährt
Keine neuen Beiträge Access Formulare: Fenster mit Steuerelemente in der Formularentwurfsansicht 4 GregorJ 188 01. Nov 2010, 16:05
GregorJ Fenster mit Steuerelemente in der Formularentwurfsansicht
Keine neuen Beiträge Access Formulare: Fenster Groß 2 Tara11 202 29. Jul 2010, 09:06
Tara11 Fenster Groß
Keine neuen Beiträge Access Tabellen & Abfragen: Fenster Parameterabfrage 3 hansguenter 404 12. Jan 2010, 15:13
hansguenter Fenster Parameterabfrage
Keine neuen Beiträge Access Formulare: Unterformular über Button in separatem Fenster öffnen 4 Gast 5008 12. Dez 2009, 00:19
Willi Wipp Unterformular über Button in separatem Fenster öffnen
Keine neuen Beiträge Access Formulare: Formular im selben Fenster 1 Drewbie 394 27. Nov 2009, 16:27
Chrischiable Formular im selben Fenster
Keine neuen Beiträge Access Formulare: Fenster wiederherstellen -Symbol aus Menüleiste entfernen 4 Gast 3945 05. Okt 2009, 19:45
symbolleisten Fenster wiederherstellen -Symbol aus Menüleiste entfernen
Keine neuen Beiträge Access Tabellen & Abfragen: Frage bez. Berechnung in Datumfeld 4 MountPilate 298 04. Aug 2009, 17:37
Gast Frage bez. Berechnung in Datumfeld
Keine neuen Beiträge Access Formulare: Fehler abfrangen....da Tabelle in Bez. ist. 3 sid-online 403 02. Okt 2008, 12:36
Willi Wipp Fehler abfrangen....da Tabelle in Bez. ist.
Keine neuen Beiträge Access Formulare: "Fenster wiederherstellen" -Symbol in eigener Menu 0 Zamp 805 03. Jul 2007, 22:08
Zamp "Fenster wiederherstellen" -Symbol in eigener Menu
Keine neuen Beiträge Access Tabellen & Abfragen: parameterwert eingeben fenster 2 marcusf86 702 20. Mai 2007, 04:37
derArb parameterwert eingeben fenster
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: HTML CSS