HOW TO

Erstellen von Verbindungen mit in SQL Server gespeicherten Daten bei denen Groß-/Kleinschreibung beachtet wird

Last Published: November 17, 2020

Zusammenfassung

In SQL Server wird die Groß-/Kleinschreibung bei Verbindungen nicht beachtet. Sortierungen, bei denen die Groß-/Kleinschreibung beachtet wird, werden in ArcGIS nicht unterstützt.

Vorgehensweise

Workflow 1

Verwenden Sie beim Erstellen einer Verbindung auf der Basis von Zeichenfolgen, bei denen die Groß-/Kleinschreibung beachtet wird, Abfragetabelle erstellen mit COLLATE.Beispielsweise sollte der Parameter Ausdruck für Abfragetabelle erstellen etwa wie folgt verwendet werden, wobei "dataset1.field" mit "dataset2.field" verbunden wird:

database.dataowner.dataset1.field COLLATE SQL_Latin1_General_CP1_CS_AS = database.dataowner.dataset2.field COLLATE SQL_Latin1_General_CP1_CS_AS

Der Vorteil dieses Workflows ist, dass die Spalten nicht direkt geändert werden. COLLATE SQL_Latin1_General_CP1_CS_AS muss jedoch jedes Mal aufgerufen werden, wenn das Werkzeug ausgeführt wird, um eine Verbindung auszuführen.

Workflow 2

Es gibt einen älteren Knowledge Base-Artikel, in dem vorgeschlagen wird, die Spalte direkt zu ändern, um Sortierungen, bei denen die Groß-/Kleinschreibung beachtet wird, verwenden zu können: How To: In ArcSDE for SQL Server, enable case-sensitive queries on an attribute column. Dieser Workflow funktioniert jedoch möglicherweise nicht, da der Artikel veraltet ist.Wenn der im oben erwähnten Artikel beschriebene Workflow nicht funktioniert, kann stattdessen der Befehl "ALTER TABLE" verwendet werden, wobei die folgenden Schritte erforderlich sind. Der Vorteil gegenüber diesem Workflow liegt darin, dass Verbindungen wie üblich erstellt werden können, ohne COLLATE aufzurufen und ohne das Werkzeug Abfragetabelle erstellen zu verwenden.Der Nachteil ist, dass die Spalten direkt geändert werden müssen.

  1. Starten Sie SQL Server Management Studio.
  2. Markieren Sie die Datenbank.
  3. Wählen Sie Neue Abfrage.
  4. Führen Sie den folgenden Befehl aus*:
alter table [dataowner].[dataset1] alter column [field] nvarchar(50)COLLATE SQL_Latin1_General_CP1_CS_AS;

* Tun Sie dies für die Felder in beiden Tabellen. Beachten Sie, dass der Datentyp je nach Länge des Textfeldes gegebenenfalls geändert werden muss, zum Beispiel "nvarchar(50)".

Artikel-ID:000001035

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