Das ist schön zu hören, dass ich in dem Punkt richtig liege. Dies ist ja auch nur die Beispielaufgabe aus dem Programmierhandbuch.
Ich kann dort nichts doppeltes erkennen, vllt fällt dir ja was auf:
View:
Code: Alles auswählen
CREATE VIEW V_BAVERP(
ID,
MASKENKEY,
BKUNDE_ID,
BSM_ID,
DATUM,
GEDRUCKT,
BENUTZER,
GESPEICHERT,
BKUNDE_MASKENKEY,
BKUNDE_BADR_NAME,
BKUNDE_BADR_BEZ,
BKUNDE_BADR_ABTEILUNG,
BKUNDE_BADR_STRASSE,
BKUNDE_BADR_BPLZ_MASKENKEY,
BKUNDE_BADR_BPLZ_ORT,
BSM_MASKENKEY,
BSM_NAME)
select:
Code: Alles auswählen
AS
SELECT
A.ID,
A.MASKENKEY,
A.BKUNDE_ID,
A.BSM_ID,
A.DATUM,
A.GEDRUCKT,
A.BENUTZER,
A.GESPEICHERT,
B.MASKENKEY,
C.NAME,
C.BEZ,
C.ABTEILUNG,
C.STRASSE,
D.MASKENKEY,
D.ORT,
E.MASKENKEY,
E.NAME
FROM BAVERP A
LEFT OUTER JOIN BKUNDE B ON A.BKUNDE_ID = B.ID
LEFT OUTER JOIN BADR C ON B.BADR_ID_ADRNR = C.ID
LEFT OUTER JOIN BPLZ D ON C.BPLZ_ID_LANDPLZ = D.ID
LEFT OUTER JOIN BSM E ON A.BSM_ID = E.ID
;
Kannst mir glauben, das wurmt mich total, so ein blödes Handbuch. Aber wenn ich die Aufgabe drin habe, sollte mein eigendliches Vorhaben kein Problem mehr darstellen.
edit:
schau mal im select-code:
MAskenkey beginnt mit B, die Felder werden aber mit C referenziert. Kann es das sein?