Neuigkeiten:

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

Mobiles Hauptmenü

Löschabfrage

Begonnen von Micha_Essen, Juli 04, 2011, 12:38:02

⏪ vorheriges - nächstes ⏩

Micha_Essen

Hallo,
ich habe eine löschabfrage erstellt, die bestimmte einträge aus einer Tabelle entfernen soll.
Leider weigert sich Access diese Zeile per Löschabfrage zu löschen, und gibt mir die Fehlermeldung "Löschen aus den angegebenen Tabellen nicht möglich.
Die Abfrage basiert auf den Tabelle aus denen die Datensätze gelöscht werden sollen. Und einer Tabelle die die ID's hat die aus der ersten Tabelle gelöscht werden sollen.
Beim Anzeigen funktioniert das alles - Access zeigt mir nur die Datensätze an die er löschen soll. Aber sobald ich die Löschabfrage abschicke meckert Access das es nicht geht (siehe Fehlermeldung).

Woran kann das liegen, und vor allem wie kann ich es beheben ?

Danke im voraus

Gruß Micha

MzKlMu

Hallo,
wenn Du Beziehungen eingerichtet hast, muss gem. Hirachie gelöscht werden. Erst die Datensaätze der n-Seite(n) dann die Datensätze der 1-Seite.
Oder gleich die 1-Seite und bei RI Löschweitergabe einstellen.

Warum willst Du überhaupt Datensaätze löschen, sind/waren die falsch?
Gruß Klaus

Micha_Essen

Hallo,
das hauptproblem ist halt das ich als Grundlage eine ExcelTabelle bekomme die ich in Acces soweit aufbereite, bis ich eine Tabelle bekomme die leider auch die Fehlerhaften Datensätze beinhaltet.
Jetzt habe ich halt die Tabelle mit alles Datensätzen und eine Tabelle mit den fehlerhaften Datensätzen die gelöscht werden sollen.

Ich hab jetzt die Abfrage ausprobiert
Tabelle 1 (Alle Datensätze)  Tabelle 2 (nur die zu löschenden Datensätze)
Ich geb jetzt die Tabelle 1 mit Sternchen an (damit Access überhaupt die Tabelle erkennt)
Die Tabellen stehen jetzt in der Beziehung n:1 (Tabelle2):(Tabelle1).
Oder in der Beziehung 1:1.
Bei beiden Optionen meckert halt Access sobald ich eine löschabfrage erstelle das aus der angegebenen Tabelle nicht gelöscht werden kann.
Anzeigen lassen in der Abfrage (ob die richtigen Datensätze ausgewählt worden sind) funktioniert. Und das manuelle Löschen in der Ansicht läßt Access auch zu.
Woran kann das jetzt liegen - ich steh bzw. sitz ein wenig ratlos vorm Gerät.

Danke

Gruß Micha

database

Hallo,

kannst du die DB mal komprimieren und zippen um sie hier hochzuladen?

Nicht mit allen Datensätzen, lass einfach ein paar relevante Sätze drinnen um die Löschabfrage zu testen (die solltest du dann auch in diese DB einpacken).

DF6GL

Hallo,

"Tabelle 1 (Alle Datensätze)  Tabelle 2 (nur die zu löschenden Datensätze)"

entferne "sicherheitshalber"die Beziehungen.
Dann:

Delete from Tabelle1 where Tab1ID  in (select Tab2ID from Tabelle2)

oder auch:

Delete Tabelle1.* from Tabelle1 inner join Tabelle2 on Tabelle1.ID = Tabelle2.ID
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access