操作方法

如何使用存储在 SQL Server 中的数据创建区分大小写的连接

Last Published: November 17, 2020

摘要

在 SQL Server 中,连接区分大小写。 ArcGIS 不支持区分大小写的排序规则。

过程

工作流 #1

在基于区分大小写的字符串创建连接时,请将创建查询表和 COLLATE 配合使用。 例如,创建查询表表达式参数应如下所示,其中 dataset1.field 连接到 dataset2.field:

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

此工作流的优点是不会直接修改列。 但是,每次执行该工具以执行连接时,都必须调用 COLLATE SQL_Latin1_General_CP1_CS_AS

工作流 #2

较早的知识库文章:操作方法:在 ArcSDE for SQL Server 中的属性列上启用区分大小写的查询建议直接修改该列以使用区分大小写的排序规则。 但是,因为本文已过时,所以此工作流可能不起作用。 如果以上文章中概述的工作流不起作用,则可以按照以下步骤来使用 ALTER TABLE 命令: 此工作流的优点在于,可以按通常的方式创建连接,而无需调用 COLLATE 和使用创建查询表。 缺点是必须直接修改列。

  1. 打开 SQL Server Management Studio。
  2. 高亮显示数据库。
  3. 选择新建查询
  4. 执行*以下命令:
alter table [dataowner].[dataset1] alter column [field] nvarchar(50)COLLATE SQL_Latin1_General_CP1_CS_AS;

* 针对两个表中的字段执行此操作。 请注意,可能需要更改数据类型,具体取决于文本字段的长度,例如 nvarchar(50)。

文章 ID:000001035

从 ArcGIS 专家处获得帮助

联系技术支持部门

下载 Esri 支持应用程序

转至下载选项

相关信息

发现关于本主题的更多内容