Access-o-Mania

Access-Forum (Deutsch/German) => Tabelle/Abfrage => Thema gestartet von: Xoar am Dezember 01, 2020, 17:18:15

Titel: [gelöst] Einträge mit Anfügeabfrage erzeugen
Beitrag von: Xoar am Dezember 01, 2020, 17:18:15
Hallo zusammen,

mit Anfügeabfragen tue ich mich immer etwas schwer, ihr könnt mir da bestimmt bei helfen.

Zur Situation: Es gibt eine
1. tblMitarbeiter (->MitarbeiterID...),
2. tblQualis (QualiID, QualiName)
3. tblQualiMitarbeiter (F_MitarbeiterID, F_QualiID, SeitWann) <- zusammengesetzter Index mit F_MitarbeiterID und F_QualiID

Wenn eine neuer Mitarbeiter angelegt wird, soll folgendes passieren.
Alle QualiIDs aus tblQualis mit der neuen MitarbeiterID in tblQualiMitarbeiter hinzufügen.

Probiert habe ich es folgendermaßen:
strSQL = " INSERT INTO tblQualiMitarbeiter ( F_QualiID, F_MitarbeiterID ) " & _
                        " SELECT tblQualis.ID, " & Me!MitarbeiterID & "" & _
                        " FROM tblQualis, tblMitarbeiter; "
                CurrentDb.Execute strSQL, 128

Es kommt als Fehlermeldung, dass der Index verletzt wurde und kein Eintrag hinzugefügt wurde.

Ich weiß leider nicht warum, könnt ihr mir da helfen?

Danke im Voraus

PS: Das kommt beim debug.print von strSQL raus:
INSERT INTO tblQualiMitarbeiter ( F_QualiID, F_MitarbeiterID )  SELECT tblQualis.ID, 591 FROM tblQualis, tblMitarbeiter;
Titel: Re: Einträge mit Anfügeabfrage erzeugen
Beitrag von: Xoar am Dezember 01, 2020, 17:42:51
Ok habs selber herausgefunden.

Die tblMitarbeiter unter FROM musste weg.

                strSQL = " INSERT INTO tblQualiMitarbeiter ( F_QualiID, F_MitarbeiterID ) " & _
                         " SELECT tblQualis.ID, " & Me!MitarbeiterID & "" & _
                         " FROM tblQualis; "
                CurrentDb.Execute strSQL, 128

so klappt es :)