ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • Hilfe
  • Sign Out
ArcGIS Desktop

ArcGIS Online

Die Mapping-Plattform für Ihre Organisation

ArcGIS Desktop

Ein vollständiges professionelles GIS

ArcGIS Enterprise

GIS in Ihrem Unternehmen

ArcGIS for Developers

Werkzeuge zum Erstellen standortbezogener Apps

ArcGIS Solutions

Kostenlose Karten- und App-Vorlagen für Ihre Branche

ArcGIS Marketplace

Rufen Sie Apps und Daten für Ihre Organisation ab.

  • Dokumentation
  • Support
Esri
  • Anmelden
user
  • Eigenes Profil
  • Abmelden

ArcMap

  • Startseite
  • Erste Schritte
  • Karte
  • Analysieren
  • Verwalten von Daten
  • Werkzeuge
  • Erweiterungen

Geodatabase aktualisieren

  • Zusammenfassung
  • Verwendung
  • Syntax
  • Codebeispiel
  • Umgebungen
  • Lizenzinformationen

Zusammenfassung

Aktualisiert eine Geodatabase auf die neuste ArcGIS-Version, um die neuen Funktionen nutzen zu können.

Sie müssen auf dem Computer, auf dem Sie das Upgrade ausführen, ArcGIS Desktop oder ArcGIS Server installiert haben. Für Enterprise-Geodatabases müssen Sie eine direkte Verbindung mit der zu aktualisierenden Geodatabase herstellen. Es kann keine Verbindung über einen ArcSDE-Dienst hergestellt werden.

Verwendung

  • Das Werkzeug Geodatabase aktualisieren akzeptiert eine Personal-Geodatabase, File-Geodatabase oder eine .sde-Verbindungsdatei als Eingabe.

  • Desktop-, Workgroup- oder Enterprise-Geodatabases können nicht über ArcGIS Desktop Basic aktualisiert werden.

  • Bevor Sie die Enterprise-Geodatabase aktualisieren, müssen Sie sicherstellen, dass Sie die vorbereitenden Schritte ausgeführt haben, die für das verwendete Datenbankmanagementsystem erforderlich sind, und dass Sie eine Sicherung der Datenbank erstellt haben.

    • Aktualisieren einer Geodatabase in DB2
    • Aktualisieren einer Geodatabase in Informix
    • Aktualisieren einer Geodatabase in Oracle
    • Aktualisieren einer Geodatabase in PostgreSQL
    • Aktualisieren einer Geodatabase in SQL Server

  • Sie können die Geodatabase-Version bestimmen, indem Sie im Fenster "Katalog" mit der rechten Maustaste auf das Kataloginhaltsverzeichnis klicken und Eigenschaften auswählen. Im Abschnitt Upgrade-Status der Registerkarte Allgemein wird die ArcGIS-Version der Geodatabase angezeigt und angegeben, ob die Geodatabase auf die neueste ArcGIS-Version aktualisiert werden kann.
  • Sie müssen mindestens einen der Parameter Überprüfung von Voraussetzungen durchführen oder Geodatabase aktualisieren aktivieren, Sie können jedoch auch beide Parameter aktivieren. Wenn keine Auswahl angegeben wird, wird ein Fehler ausgegeben.
  • Esri empfiehlt, vor dem Aktualisieren der Geodatabase die Voraussetzungen zu prüfen, um zu ermitteln, ob die Geodatabase aktualisiert werden kann. Wenn eine der Voraussetzungen nicht erfüllt ist, protokolliert das Werkzeug einen Fehler im Fenster Ergebnis und die Geodatabase wird nicht aktualisiert. Damit können Sie verhindern, dass Sie mit der Aktualisierung beginnen und diese dann fehlschlägt, weil eine dieser Voraussetzungen nicht erfüllt wurde. Falls bei der Prüfung ein Fehler auftritt, müssen Sie das Problem korrigieren und den Upgrade-Vorgang anschließend erneut starten.
  • Aktualisierungen von Betaversionen der Geodatabase werden nicht unterstützt.
  • Mit der Option Überprüfung von Voraussetzungen durchführen werden für jeden Geodatabase-Typ verschiedene Prüfungen ausgeführt. Für Personal- und File-Geodatabases wird überprüft, ob eine der folgenden Bedingungen zutrifft:
    • Die Geodatabase ist schreibgeschützt.
    • Es sind keine anderen Benutzer mit der Geodatabase verbunden.
    • Mit der aktuellen Verbindung werden keine Daten in der Geodatabase bearbeitet.
    • Alle Informationen innerhalb der aktuellen Geodatabase-Systemtabellen können geöffnet werden.
    • Für Desktop-, Workgroup- und Enterprise-Geodatabases wird überprüft, ob die folgenden Kriterien erfüllt sind:
      • Der verbundene Benutzer hat die entsprechenden Berechtigungen, um eine Aktualisierung auszuführen.
      • Der verbundene Benutzer bearbeitet keine Daten in der Geodatabase.
      • Es sind keine anderen Benutzer mit der Geodatabase verbunden.
      • Die Datenbank ist für die Unterstützung von XML-Datentypen aktiviert.
      • Alle Informationen innerhalb der aktuellen Geodatabase-Systemtabellen können geöffnet werden.
      • Für Geodatabases in PostgreSQL und Oracle wird ermittelt, ob die Datenbank auf die aktuelle Version der Bibliothek "ST_Geometry" zugreifen kann.
      • Für Geodatabases im Schema eines Benutzers in Oracle wird ermittelt, ob die Master-Geodatabase aktualisiert wird.
  • Ab ArcGIS Desktop 10.5 werden in einer Geodatabase gespeicherte Locators nicht mehr unterstützt. Wenn in Ihrer Geodatabase ein Locator gespeichert ist und Sie eine Aktualisierung auf Version 10.5 oder höher durchführen, müssen Sie den Locator zunächst mithilfe einer älteren Version der Software aus der Geodatabase entfernen.

Syntax

UpgradeGDB_management (input_workspace, input_prerequisite_check, input_upgradegdb_check)
ParameterErläuterungDatentyp
input_workspace

Geben Sie die zu aktualisierende Geodatabase an. Geben Sie beim Aktualisieren einer Desktop-, Workgroup- oder Enterprise-Geodatabase eine Datenbankverbindungsdatei (.sde) an, mit der eine Verbindung mit der Geodatabase als Geodatabase-Administrator hergestellt wird.

Workspace
input_prerequisite_check

Geben Sie an, ob die Prüfung der Voraussetzungen vor dem Aktualisieren der Geodatabase ausgeführt werden soll.

  • NO_PREREQUISITE_CHECK —Die Prüfung der Voraussetzungen wird nicht ausgeführt.
  • PREREQUISITE_CHECK —Die Prüfung der Voraussetzungen wird ausgeführt. Dies ist die Standardeinstellung.
Boolean
input_upgradegdb_check

Legen Sie fest, ob die Geodatabase aktualisiert werden soll.

  • NO_UPGRADE —Die Aktualisierung wird nicht ausgeführt.
  • UPGRADE —Die Aktualisierung wird ausgeführt. Dies ist die Standardeinstellung.
Boolean

Abgeleitete Ausgabe

NameErklärungDatentyp
out_workspace

Codebeispiel

UpgradeGeodatabase – Beispiel 1 (Python-Fenster)

Mit dem folgenden Skript im Python-Fenster wird veranschaulicht, wie die Funktion UpgradeGDB im unmittelbaren Modus verwendet wird, um eine File-Geodatabase zu aktualisieren:

import arcpy
default_gdb = "C:/temp/Default.gdb"
arcpy.UpgradeGDB_management(default_gdb, "PREREQUISITE_CHECK", "UPGRADE")
UpgradeGeodatabase – Beispiel 2 (eigenständiges Skript für File-Geodatabase)

Mit dem folgenden eigenständigen Python-Skript wird veranschaulicht, wie die Funktion UpgradeGDB in einem Python-Skript verwendet wird, um eine File-Geodatabase zu aktualisieren:

# Description: upgrade a geodatabase
 
# Import arcpy module
import arcpy
# Local variables:
default_gdb = "C:/temp/Default.gdb"
# Process: Upgrade Geodatabase
arcpy.UpgradeGDB_management(default_gdb, "PREREQUISITE_CHECK", "UPGRADE")
UpgradeGeodatabase – Beispiel 3 (eigenständiges Skript mit einer .sde-Verbindungsdatei)

Mit dem folgenden eigenständigen Python-Skript wird veranschaulicht, wie die Funktion UpgradeGDB in einem Python-Skript verwendet wird, um eine Enterprise-Geodatabase mithilfe einer vorhandenen .sde-Verbindungsdatei zu aktualisieren:

# Description: upgrade a geodatabase
# Import arcpy module
import arcpy
# Local variables:
default_gdb = "C:/connections/gdbconnection.sde"
# Process: Upgrade Geodatabase
arcpy.UpgradeGDB_management(default_gdb, "PREREQUISITE_CHECK", "UPGRADE")
UpgradeGeodatabase – Beispiel 4 (eigenständiges Skript für Enterprise-Geodatabase)

Mit dem folgenden eigenständigen Python-Skript wird veranschaulicht, wie die Funktion UpgradeGDB in einem Python-Skript verwendet wird, um eine Enterprise-Geodatabase zu aktualisieren:

"""
Name: upgrade_gdb.py
Description: Provide connection information to an Enterprise geodatabase 
and upgrade the geodatabase
Type upgrade_gdb.py -h or upgrade_gdb.py --help for usage
"""

# Import system modules
import arcpy
import os
import optparse
import sys


# Define usage and version
parser = optparse.OptionParser(usage = "usage: %prog [Options]", version="%prog 2.0; valid for 10.1 only")

#Define help and options
parser.add_option ("--DBMS", dest="Database_type", type="choice", choices=['SQLSERVER', 'ORACLE', 'POSTGRESQL', 'DB2','INFORMIX','DB2ZOS',''], default="", help="Type of enterprise DBMS:  SQLSERVER, ORACLE, or POSTGRESQL.")
parser.add_option ("-i", dest="Instance", type="string", default="", help="DBMS instance name")
parser.add_option ("--auth", dest="account_authentication", type ="choice", choices=['DATABASE_AUTH', 'OPERATING_SYSTEM_AUTH'], default='DATABASE_AUTH', help="Authentication type options (case-sensitive):  DATABASE_AUTH, OPERATING_SYSTEM_AUTH.  Default=DATABASE_AUTH")
parser.add_option ("-u", dest="User", type="string", default="", help="Geodatabase administrator user name")
parser.add_option ("-p", dest="Password", type="string", default="", help="Geodatabase administrator password")
parser.add_option ("--upgrade", dest="Upgrade", type="choice", choices=['TRUE', 'FALSE'], default="FALSE", help="Upgrade Options (case-sensitive):  TRUE=Perform Pre-requisite check and upgrade geodatabase, FALSE=Perform Pre-requisite check only.  Default=FALSE")                   
parser.add_option ("-D", dest="Database", type="string", default="none", help="Database name:  Not required for Oracle")


# Check if value entered for option
try:
	(options, args) = parser.parse_args()

	
#Check if no system arguments (options) entered
	if len(sys.argv) == 1:
		print("%s: error: %s\n" % (sys.argv[0], "No command options given"))
		parser.print_help()
		sys.exit(3)

	#Usage parameters for spatial database connection to upgrade
	account_authentication = options.account_authentication.upper()
	username = options.User.lower() 
	password = options.Password	
	do_upgrade = options.Upgrade
	database = options.Database.lower()
	database_type = options.Database_type.upper()
	instance = options.Instance
	
	if (database_type == ""):
		print("\nDatabase type must be specified!\n")
		parser.print_help()
		sys.exit(3)
	
	if (database_type == "SQLSERVER"):
		database_type = "SQL_SERVER"
	
	# Get the current product license
	product_license=arcpy.ProductInfo()
	
	# Checks required license level to upgrade
	if product_license.upper() == "ARCVIEW" or product_license.upper() == 'ENGINE':
		print("\n" + product_license + " license found!" + "  Enterprise geodatabase upgrade requires an ArcGIS Desktop Standard or Advanced, ArcGIS Engine with the Geodatabase Update extension, or ArcGIS Server license.")
		sys.exit("Re-authorize ArcGIS before upgrading.")
	else:
		print("\n" + product_license + " license available!  Continuing to upgrade...")
		arcpy.AddMessage("+++++++++")
	
	# Local variables
	instance_temp = instance.replace("\\","_")
	instance_temp = instance_temp.replace("/","_")
	instance_temp = instance_temp.replace(":","_")
	Conn_File_NameT = instance_temp + "_" + database + "_" + username     
	
	if os.environ.get("TEMP") == None:
		temp = "c:\\temp"	
	else:
		temp = os.environ.get("TEMP")
	
	if os.environ.get("TMP") == None:
		temp = "/usr/tmp"		
	else:
		temp = os.environ.get("TMP")  
	
	Connection_File_Name = Conn_File_NameT + ".sde"
	Connection_File_Name_full_path = temp + os.sep + Conn_File_NameT + ".sde"
	
	# Check for the .sde file and delete it if present
	arcpy.env.overwriteOutput=True
	if os.path.exists(Connection_File_Name_full_path):
		os.remove(Connection_File_Name_full_path)
	
	print("\nCreating Database Connection File...\n")
	# Process: Create Database Connection File...
	# Usage:  out_file_location, out_file_name, DBMS_TYPE, instnace, database, account_authentication, username, password, save_username_password(must be true)
	arcpy.CreateDatabaseConnection_management(out_folder_path=temp, out_name=Connection_File_Name, database_platform=database_type, instance=instance, database=database, account_authentication=account_authentication, username=username, password=password, save_user_pass="TRUE")
        for i in range(arcpy.GetMessageCount()):
		if "000565" in arcpy.GetMessage(i):   #Check if database connection was successful
			arcpy.AddReturnMessage(i)
			arcpy.AddMessage("\n+++++++++")
			arcpy.AddMessage("Exiting!!")
			arcpy.AddMessage("+++++++++\n")
			sys.exit(3)            
		else:
			arcpy.AddReturnMessage(i)
			arcpy.AddMessage("+++++++++\n")
			
	# Check whether geodatabase needs upgrade
	isCurrent = arcpy.Describe(Connection_File_Name_full_path).currentRelease
	
	if isCurrent == True:
		print("The geodatabase is already at the current release and cannot be upgraded!")
		sys.exit("Upgrade did not run.")
	
	
	# Process: Upgrade geodatabase...
	try:
		if do_upgrade.lower() == "true":
			print("Upgrading Geodatabase...\n")
			arcpy.UpgradeGDB_management(input_workspace=Connection_File_Name_full_path, input_prerequisite_check="PREREQUISITE_CHECK", input_upgradegdb_check="UPGRADE")
			for i in range(arcpy.GetMessageCount()):
				arcpy.AddReturnMessage(i)
			arcpy.AddMessage("+++++++++\n")
	
		else:
			print("Running Pre-Requisite Check...\n")
			arcpy.UpgradeGDB_management(input_workspace=Connection_File_Name_full_path, input_prerequisite_check="PREREQUISITE_CHECK", input_upgradegdb_check="NO_UPGRADE")
			for i in range(arcpy.GetMessageCount()):
				arcpy.AddReturnMessage(i)
			arcpy.AddMessage("+++++++++\n")
		
	        
	except:
		for i in range(arcpy.GetMessageCount()):
			arcpy.AddReturnMessage(i)
		
	if os.path.exists(Connection_File_Name_full_path):
		os.remove(Connection_File_Name_full_path)
	
#Check if no value entered for option	
except SystemExit as e:
	if e.code == 2:
		parser.usage = ""
		print("\n")
		parser.print_help()
		parser.exit(2)

Umgebungen

  • Aktueller Workspace

Lizenzinformationen

  • ArcGIS Desktop Basic: Ja
  • ArcGIS Desktop Standard: Ja
  • ArcGIS Desktop Advanced: Ja

Verwandte Themen

  • Geodatabase-Aktualisierungen
  • Überblick über das Toolset "Geodatabase-Verwaltung"

ArcGIS Desktop

  • Startseite
  • Dokumentation
  • Support

ArcGIS Plattform

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

Über Esri

  • Über uns
  • Karriere
  • Esri Blog
  • User Conference
  • Developer Summit
Esri
Wir sind an Ihrer Meinung interessiert.
Copyright © 2019 Esri. | Datenschutz | Rechtliches