HOW TO

Verwenden von SQL zum Einfügen eines Wertes in eine Global-ID- oder GUID-Spalte in den versionierten Sichten einer Enterprise-Geodatabase in SQL Server

Last Published: November 11, 2020

Zusammenfassung

In den folgenden Anweisungen wird beschrieben, wie ein Wert unter Verwendung von SQL (Structured Query Language) in Microsoft SQL Server in eine Global-ID- oder GUID (Globally Unique Identifier)-Spalte in den versionierten Sichten einer Enterprise-Geodatabase eingefügt wird.

Vorgehensweise

Mit den Datentypen "Global ID" und "GUID" werden registrierungsartige Zeichenfolgen aus 36 Zeichen gespeichert, die in geschweifte Klammern eingeschlossen sind. Mit diesen Zeichenfolgen werden Features oder Tabellenzeilen innerhalb einer Geodatabase oder Geodatabase-übergreifend eindeutig gekennzeichnet. Dies dient der Nachverfolgung von Features bei unidirektionalen und bidirektionalen Geodatabase-Replikationen und wird in Beziehungen oder in Anwendungen verwendet, die GUIDs erfordern.

Wenn bei einer Beziehung ein Feld "Globale ID" der Ursprungsschlüssel ist, muss der Zielschlüssel ein GUID-Feld sein. Fügen Sie einer Feature-Class in ArcCatalog globale IDs hinzu, indem Sie mit der rechten Maustaste auf die Feature-Class klicken und anschließend auf "Globale IDs hinzufügen" klicken. In der Geodatabase werden die Werte automatisch verwaltet. Erstellen Sie das GUID-Feld in ArcCatalog, und verwalten Sie seine Werte.

Geben Sie, wenn Sie unter Verwendung von SQL eine Zeile in eine versionierte Sicht mit einer Global-ID-Spalte einfügen, einen eindeutigen GUID-Wert für die Global-ID-Spalte an. Dies wird in der folgenden Vorgehensweise beschrieben:

Hinweis: Weitere Informationen zu globalen IDs, GUIDs und zu der Geodatabase-Replikation finden Sie in der ArcGIS Desktop-Hilfe im Abschnitt mit den Referenzinformationen.
Die folgenden Beispiele beziehen sich auf Microsoft SQL Server. Die Vorgehensweise ist bei anderen unterstützten Datenbanken ähnlich.
  1. Wenn eine Feature-Class als versioniert registriert wird, dann wird die versionierte Sicht automatisch von der Software erstellt. Angenommen, die Feature-Class "parcels" hat ein Global-ID-Feld und ist als versioniert registriert. Identifizieren Sie die versionierte Sicht, indem Sie die Feature-Class-Eigenschaften anzeigen. Der Name der versionierten Sicht wird auf der Registerkarte Quelle angezeigt, wie in der folgenden Abbildung zu sehen ist.
Abbildung der Feature-Class-Eigenschaften
  1. Öffnen Sie einen SQL Server Query Analyzer, und melden Sie sich als ein Benutzer mit der Berechtigung zum Bearbeiten der Feature-Class "parcels" an.
  2. Erstellen Sie eine neue Version:
exec sde.create_version N'sde.default', N'parcels_42',2, 2, 'Parcels Version' -- "parcels_42" ist der Name der zu erstellenden Version, und "Parcels Version" ist die Beschreibung.
  1. Legen Sie die aktuelle Version für die Bearbeitung fest:
exec sde.set_current_version 'parcels_42'
  1. Starten Sie die Editiersitzung:
exec sde.edit_version 'parcels_42', 1
Hinweis: newid() ist eine integrierte Funktion in SQL Server zum Erstellen einer neuen eindeutigen GUID.
  1. Fügen Sie einen Datensatz ein.
insert into sde.parcels_evw (parcel_id,Globalid) values (87701578, newid())
  1. Beenden Sie die Editiersitzung.
exec sde.edit_version 'parcels_42', 2

Artikel-ID:000009543

Hilfe von ArcGIS-Expert*innen erhalten

Technischen Support kontaktieren

Die Esri Support-App herunterladen

Zu den Download-Optionen

Zugehörige Informationen

Weitere Informationen zu diesem Thema erkunden