Elite Veteran
Beiträge: 876
Ort: Wien | Hallo!
LoosA - 04.02.21
ich stehe vor einem Rätsel: Ich möchte per Aktualisierungsabfrage ein Feld in einer Tabelle A mit einem Feld aus einer anderen Tabelle B überschreiben, wenn dort kein leeres Feld ist. Das mache ich mit folgendem Code:
UPDATE 2tbl_Haupttabelle INNER JOIN 2tbl_update ON [2tbl_Haupttabelle].[ID#] = [2tbl_update].[ID] SET [2tbl_Haupttabelle].Bundesland = [2tbl_update].Bundesland_K
WHERE ((([2tbl_update].Bundesland_K) Is Not Null));
Das Problem: Innerhalb mein realen Datenbank funktioniert die Abfrage nicht - offenbar werden die leeren Feldeingaben in der zweiten Tabelle nicht als leer erkannt (ahnungslose Vermutung), denn es werden sowohl vorhandene Einträge UND auch Leerzellen übertragen (gewünschte Einträge in der zu aktualisierenden Tabelle somit gelöscht!). Nun kommts: Exportiere ich die beiden Tabellen in eine neue DB und führe alles analog aus, funktioniert alles so wie gewünscht.
...
Gibt die einfache Auswahlabfrage
SELECT Bundesland_K FROM 2tbl_update WHERE Bundesland_K Is Not Null
unterschiedliche Ergebnisse in den beiden DBs?
Die gleiche Frage für
SELECT 2tbl_Haupttabelle INNER JOIN 2tbl_update ON [2tbl_Haupttabelle].[ID#] = [2tbl_update].[ID]
WHERE [2tbl_update].Bundesland_K Is Not Null
Wenn, dann sind es vielleicht deine Tabellen- und Feldnamen mit gefährlichen Sonderzeichen. ----- Servus
Karl
*********
Access-Entwickler-Konferenz: https://www.donkarl.com/?aek
Access DevCon Vienna: https://www.donkarl.com/devcon
Access Forever: https://www.accessforever.org
Access News: https://www.youtube.com/playlist?list=PLVCeBbJIMDvdJ8ghMbEakJ6_EQyvy... |