ERROR
Bei der Ausführung eines Python-Skripts, das eine Funktion zum erneuten Erstellen des Adressen-Locators enthält, wird die folgende Fehlermeldung zurückgegeben:
Error: ERROR 000005: Could not open the address locator. Failed to execute (RebuildAddressLocator).
Dieses Problem kann die folgenden Ursachen haben:
Getrennte Datensätze
Werden vor der Neuerstellung eines Adressen-Locators der Datenbank neue Datensätze hinzugefügt, werden die in Konflikt stehenden veralteten Datensätze, die noch mit dem ursprünglichen Adressen-Locator-Namen verknüpft sind, in den vom ArcGIS-Server-Service verwendeten Repository-Tabellen beibehalten. Diese getrennten Datensätze verhindern aufgrund von Konflikten mit den neuen Datensätzen, dass das System den Adressen-Locator erneut erstellt.
Note: Der Adressen-Locator kann mit einem anderen Namen erneut erstellt werden. Wenn Sie den Adressen-Locator mit dem ursprünglichen Namen erneut erstellen möchten, finden Sie weitere Informationen im Abschnitt mit der Lösung zum Entfernen getrennter Datensätze.
Sperren
Der Fehler wird zurückgegeben, da aktive Sperren für den Adressen-Locator vorhanden sind, welche die Neuerstellung des Adressen-Locators verhindern. Die aktiven Sperren sind vorhanden, da andere Dienste noch auf den Geokodierungsservice zugreifen. Weitere Informationen zur Funktionsweise von Sperren finden Sie unter ArcMap: Schemasperre.
32-Bit im Vergleich zu 64-Bit
Bei der Ausführung des Skripts zur Neuerstellung des Adressen-Locators in einer 64-Bit-Befehlszeile wird dieser Fehler zurückgegeben, da das Skript möglicherweise Werkzeuge oder Funktionen aufruft, die in einer 64-Bit-Umgebung nicht unterstützt werden. Es kann vorkommen, dass ArcMap-Werkzeuge und -Programme in einer 64-Bit-Umgebung ausgeführt werden, obwohl es sich um eine 32-Bit-Installation von ArcMap handelt. Weitere Informationen finden Sie unter ArcMap: Background Geoprocessing (64-bit).
Führen Sie die Schritte für die Lösung aus, die zu Ihrer Problemursache passt.
Entfernen getrennter Datensätze
DELETE FROM <locator_name>_lox WHERE name = <address_locator_name>; DELETE FROM SDE_locators WHERE name = <address_locator_name>; DELETE FROM SDE_metadata WHERE name = <address_locator_name>; DELETE FROM SDE_table_registry WHERE name = <address_locator_name>; DELETE FROM SDE_column_registry WHERE name = <address_locator_name>; DELETE FROM GDB_ITEMS WHERE name = <address_locator_name>;
Hinweis: Bei den oben aufgeführten Tabellen handelt es sich um Systemtabellen, die Datensätze eines Adressen-Locators enthalten.
Beenden des Service
Weitere Informationen zum Starten und Beenden eines Service finden Sie unter ArcGIS-Hilfe: Starten und Beenden von Services.
Ausführen des Skripts in der 32-Bit-Umgebung
Führen Sie das Skript mit der 32-Bit-Version der Python-Befehlszeilenschnittstelle aus und nicht mit der 64-Bit-Version. Die 32-Bit-Version finden Sie hier:
C:\Python27\ArcGIS10.x\python.exe
Wenn das Skript mit der Python-Konsole in ArcMap ausgeführt wird und fehlschlägt, ändern Sie zusätzlich die Einstellung der Windows-Dateizuordnung so, dass Python in der 32-Bit-Umgebung ausgeführt wird. Informationen zu den erforderlichen Schritten finden Sie unter FAQ: Warum schlagen Python-Skripte auf einem Computer fehl, auf dem ArcGIS for Server und Desktop installiert sind?.
Unterstützung durch ArcGIS-Experten anfordern
Esri Support App herunterladen