Mehr

Wie lösche ich die Raumbezugskennung?

Wie lösche ich die Raumbezugskennung?


Ich habe in Oracle eine Tabelle mit einer sde.st_geometry-Spalte erstellt. Ich habe die Anweisungen der ArcGIS-Hilfe befolgt, um die Tabelle in der Geodatabase zu registrieren.

Meine Anweisung zur Tabellenerstellung lautet:

Tabelle erstellen tbl_Comm_Cove ( ID NUMBER(10,0) nicht null, Name CHAR(200), Devi_Num CHAR(8), Code CHAR(200), Unit_Grid CHAR(10), GID CHAR(200), Belo_Road CHAR(200), Inst_Time DATE, Mana_Depa_ID NUMBER(10,0), Owne_Depa CHAR(200), Main_Depa CHAR(200), Mate_ID NUMBER(10,0), Diam NUMBER(10,2), Devi_Stat_ID NUMBER(10,0), "Desc" CHAR(200), Shap_ID NUMBER(10,0), Init_Time DATE, Chan_Time DATE, Note CLOB, Einschränkung PK_TBL_COMM_COVE Primärschlüssel (ID) ); / Tabelle ändern tbl_comm_cove loc sde.st_geometry hinzufügen; / CREATE INDEX tbl_comm_cove_idx ON tbl_comm_cove(loc) INDEXTYPE IS sde.st_spatial_index PARAMETER('st_grids=1,3,0 st_srid=0'); /

Mein Registrierungsbefehl lautet:

sdelayer -o register -l tbl_comm_cove,loc -e p -t st_geometry -R 0 -C id,sde,0 -i sde:oracle11g -s localhost -u XXXXX-p XXXXX

Wie Sie sehen, habe ich meiner Geoinformationsspalte "loc" eine SRID zugewiesen. Nun möchte ich diese Zuordnung löschen. Ich habe versucht, dies in ArcCatalog zu tun, indem ich auf die Schaltfläche "Löschen" auf der Registerkarte "XY-Koordinaten" des Dialogfelds "Eigenschaften" geklickt habe, aber wenn ich ArcCatalog erneut öffne, ist die Zuweisung immer noch da.

Was sollte ich tun?

Meine Oracle-Version ist 11.2.0, Arcgis-Version ist 10.0.


Ein Raumbezug ist keine nominale Metadateneigenschaft, die beliebig geändert werden kann. Einmal eingestellt, kann es nicht mehr geändert werden. Das Löschen ist der einzige unterstützte Mechanismus zum Ändern einer SRID. Nachdem Sie eine Tabelle bei ArcGIS registriert haben, sollte sie nur mit Geodatabase-fähigen Werkzeugen (Desktop, Python, ArcObjects .Net/Java) gelöscht werden. Wenn Sie nur über ArcSDE-Befehlszeilentools registriert werden, ist es am sichersten, Tabellen mit . zu löschensdetable -o löschen.

Darüber hinaus gibt es mehrere nicht standardmäßige Aspekte Ihrer Konfiguration:

  • Um mit ArcGIS zu arbeiten, sollten die Entity-Flags auf "np" gesetzt werden.
  • Es ist fast immer falsch, zwei Ebenen der räumlichen Indizierung zu verwenden, und bei Punktdaten immer falsch. Ein Rasterwert, 3/4-5/4 der durchschnittlichen Abfragefenstergröße, ist mehr als ausreichend. Alternativ können Sie den Wert auf alle Nullen setzen, und ArcGIS berechnet nach dem ersten Laden eine geeignete Rastergröße.
  • Es gibt keinen Grund, warum Sie die Tabelle nicht mit der Spalte SDE.ST_GEOMETRY erstellen können
  • Ein anfänglicher SDE-Set-ID-Wert von 0 ist falsch (der minimale Rowid-Wert ist 1)
  • Wenn Sie ID-Werte selbst eingeben möchten, sollte die ID-Spalte als USER-set (nicht SDE-set) registriert werden; Dadurch ist die Feature-Class für die Registrierung in der Geodatabase nicht verfügbar, die Tabelle ist jedoch als einfache Feature-Class verfügbar.
  • Wenn die Rowid-Spalte SDE-gesetzt werden soll, sollte sie definiert werdenZAHL(38) NICHT NULL
  • Angeben einer Primärschlüssel-Einschränkung vor der ArcSDE-Registrierung kann dazu führen, dass die Registrierung im Hintergrund fehlschlägt (es ist schwer zu sagen, da Sie nie angegeben haben, welches Service Pack von ArcSDE Sie installiert haben)
  • Der Kellner (-s) Option wird bei Direct Connect ignoriert und kann weggelassen werden
  • Sie sollten den räumlichen Index immer löschen, bevor Sie Tabellen im Bulk laden (verwenden Sie den LOAD-ONLY I/O-Modus, wenn Sie ArcGIS-Werkzeuge zum Laden verwenden).