Fehler 3086 beim Ausführen Query (oder SQL)

02/09/2009 - 18:05 von Wolfgang Badura | Report spam
Hallo liebe Access Gemeinde!
Benutze A03 Prof mit SP3 mit office2003-kb945674-glb.exe.

Ich habe eine Query gebastelt um bestimmte Zeilen aus einer Tabelle zu
löschen.
Beim Ausführen erhalte ich den Fehler 3086!
Wenn ich in die Tabelle öffne und die Zeilen markiere kann ich sie löschen.
Wenn ich die Query àndere und bestimmte Satznummern fix eintrage auch.
Mit Code beide Tabellen als RS definiert, so kann ich mit FindFirst etc.
auch löschen.
Die Tabelle Postbuch neu angelegen nützt auch nichts.
Nur wenn es sozusagen eine Steuertabelle gibt erhalte ich Fehler 3086.
Wenn ich mit DoCmd.RunSQL arbeite kommt auch 3086.
Das SQL-Stmt ist einfach (in einer Zeile):
"DELETE Postbuch.* FROM Postbuch INNER JOIN Briefezuloeschen ON
Postbuch.Satznummer = Briefezuloeschen.Satznummer;"
Eine logisch fast identische Query (in einer Zeile)
"DELETE Kunden.* FROM Kunden INNER JOIN KundenToDelete ON Kunden.OB =
KundenToDelete.OB;"
funktioniert.
Habe schon Stunden versch.
Vielleicht kennt jemand das Problem?
Danke im Voraus
Wolfgang
 

Lesen sie die antworten

#1 Karl Donaubauer
02/09/2009 - 18:23 | Warnen spam
Wolfgang Badura wrote:
Hallo liebe Access Gemeinde!
Benutze A03 Prof mit SP3 mit office2003-kb945674-glb.exe.

Ich habe eine Query gebastelt um bestimmte Zeilen aus einer Tabelle zu
löschen.
Beim Ausführen erhalte ich den Fehler 3086!
Wenn ich in die Tabelle öffne und die Zeilen markiere kann ich sie
löschen. Wenn ich die Query àndere und bestimmte Satznummern fix
eintrage auch. Mit Code beide Tabellen als RS definiert, so kann ich mit
FindFirst
etc. auch löschen.
Die Tabelle Postbuch neu angelegen nützt auch nichts.
Nur wenn es sozusagen eine Steuertabelle gibt erhalte ich Fehler 3086.
Wenn ich mit DoCmd.RunSQL arbeite kommt auch 3086.
Das SQL-Stmt ist einfach (in einer Zeile):
"DELETE Postbuch.* FROM Postbuch INNER JOIN Briefezuloeschen ON
Postbuch.Satznummer = Briefezuloeschen.Satznummer;"
Eine logisch fast identische Query (in einer Zeile)
"DELETE Kunden.* FROM Kunden INNER JOIN KundenToDelete ON Kunden.OB > KundenToDelete.OB;"
funktioniert.
Habe schon Stunden versch.
Vielleicht kennt jemand das Problem?



Jeder.
Die Aktualisierbarkeit hàngt z.B. davon ab, ob und welche Indizes
die JOIN-Felder haben.

Was man immer mal versuchen kann, ist

DELETE DISTINCTROW Postbuch.* FROM ...

Dann versucht JET, eindeutige Datensàtze (so heißt auch die
entsprechende Eigenschaft der Abfrage) aufgrund der Felder
oder Tabellen im SELECT anzunehmen, was die Sache oft
aktualisierbar macht.

HTH
Karl
********* Ich beantworte keine Access-Fragen per Email. *********
Access-FAQ: http://www.donkarl.com + Anmeldung und Info zur
Access-Entwickler-Konferenz (AEK12), Oktober 2009, Nürnberg

Ähnliche fragen