Migrieren von Raster-Spalten mithilfe von ArcSDE-Befehlen
Verwenden Sie zum Ändern des Speichertyps von Raster-Daten den Befehl "sdetable" mit der Operation "migrate". Hierdurch werden die Daten in der Spalte "block_data" der Raster-Blocktabelle (sde_blk_ <id>) und in der Objektspalte der Raster-Zusatztabelle (sde_aux_ <id>) vom Speichertyp LONG RAW zu BLOB oder von BLOB zu ST_RASTER in Oracle bzw. zu ST_RASTER in PostgreSQL und SQL Server konvertiert. Folgende Syntax wird verwendet:
sdetable –o migrate –l <table,raster_column> –k <config_keyword> [–i {<service> | <direct_connection>] [–s <server>] [–D <database>] –u <user> [–p <password>] [–N]
Verwenden Sie die Optionen wie folgt:
Option |
Beschreibung |
---|---|
–o |
Diese Option gibt die ausgeführte Operation an, in diesem Fall "migrate". |
–l |
Verwenden Sie diese Option, um den Namen der Tabelle anzugeben, in der die zu migrierende Raster-Spalte enthalten ist. |
–k |
Verwenden Sie diese Option, um das DBTUNE-Konfigurationsschlüsselwort für den Raster-Speichertyp festzulegen, zu dem Sie den Raster-Katalog migrieren. Das angegebene Schlüsselwort muss einen auf BLOB (nur Oracle) oder ST_RASTER festgelegten RASTER_STORAGE-Parameter enthalten. |
–i |
Geben Sie entweder die Syntax der Direktverbindung oder die Portnummer bzw. den Namen des ArcSDE-Diensts an, über den Sie eine Verbindung mit der Geodatabase herstellen. Weitere Informationen finden Sie unter Direkte Verbindungen von ArcSDE-Befehlen zu einer PostgreSQL-Geodatabase |
–s |
Geben Sie den Namen des Servers an, auf dem sich die Datenbank befindet. |
–D |
Geben Sie den Namen der Datenbank oder der Datenquelle an. Bei Oracle-Datenbanken wird diese Option nicht verwendet. |
–u |
Geben Sie den Benutzernamen des Feature-Class-Besitzers an, um sich an der Datenbank anzumelden. |
–p |
Geben Sie das Kennwort des Benutzers an. |
–N |
Wählen Sie diese Option aus, wenn die Eingabeaufforderung zum Bestätigen der Operation nicht angezeigt werden soll. |
Wenn Sie den Befehl "sdetable" mit der Operation "migrate" ausführen und eine der folgenden Bedingungen zutrifft, wird eine Fehlermeldung angezeigt:
Wenn Sie den Befehl "sdelayer" mit der Operation "migrate" ausführen und eine der folgenden Bedingungen zutrifft, wird eine Fehlermeldung angezeigt:
- Der mit der Option –u angegebene Benutzer ist nicht der Tabellenbesitzer.
- Der aktuelle Speichertyp des Rasters und das angegebene DBTUNE-Schlüsselwort sind identisch. (Für die Tabelle wird bereits der Speichertyp verwendet, den Sie mit dem Schlüsselwort angegeben haben, sodass keine Migration erforderlich ist.)
- Die Business-Tabelle enthält kein ObjectID-Feld.
- Sie versuchen, die Operation "migrate" in einer ArcSDE-Geodatabase vor Version 9.2 auszuführen.
- Sie versuchen, den Befehl "sdetable" mit der Operation "migrate" in einem anderen DBMS als Oracle, SQL Server oder PosgreSQL auszuführen.
- Sie konvertieren in den Typ "ST_Raster", aber er ist nicht in der Datenbank installiert.
-
Erstellen Sie eine Sicherung der zu migrierenden Daten.
Durch das Erstellen einer Sicherungskopie der zu migrierenden Daten stellen Sie sicher, dass die Originaldaten verfügbar sind, sollte die Migration aus irgendeinem Grund fehlschlagen.
- Öffnen Sie eine DOS-Eingabeaufforderung (Windows) oder eine Shell (UNIX oder Linux).
-
Führen Sie den Befehl "sdetable" mit der Operation "migrate" aus. Beispiel:
sdetable –o migrate –l watershed,raster –k ST_RASTER –i sde:sqlserver:mainserver\ssdb –s mainserver –D mydb –u bjar –p mine.all.mine
Stellen Sie sicher, dass Sie ein Konfigurationsschlüsselwort angeben, das den RASTER_STORAGE-Wert enthält, zu dem Sie die Daten konvertieren möchten.