当前位置: 首页 > news >正文

关于 Microsoft Dataverse-默认忽略大小写的查询说明

关于 Microsoft Dataverse-默认忽略大小写的查询说明

Posted on 2026-02-28 17:30  520_1351  阅读(0)  评论(0)    收藏  举报

今天笔者在使用 Powerautomate 查询 Davaverse数据时 , 发现查询时,结果是忽略大小写的

操作方法是,在筛选行使用:cra9e_subcategory eq 'mDr'  发现可以将 MDR的数据也查询出来

然后上网查询时,发现有如下一些说明:

Microsoft Dataverse 的底层数据库技术是 Microsoft Azure SQL Database(基于 Microsoft SQL Server 引擎)。

因为 Microsoft Dataverse 底层的 SQL Server 数据库默认排序规则(Collation)是“不区分大小写”的(Case-Insensitive, CI)。

核心原因解析 , 默认排序规则:

当您创建 Dataverse 环境时,系统会根据您选择的语言自动设置 SQL 排序规则。绝大多数语言(如英语、中文等)对应的默认排序规则都包含 _CI_ 标记(例如 Latin1_General_CI_AS)。

CI = Case Insensitive(不区分大小写)

AS = Accent Sensitive(区分重音)

查询行为:

由于底层数据库配置为“不区分大小写”,当您使用 OData 查询(如 $filter=cra9e_subcategory eq 'mDr')时:

Dataverse 将请求发送给 SQL Server。

SQL Server 执行比较时,会忽略字母的大小写差异。

因此,'mDr'、'MDR'、'mdr'、'MdR' 都被视为完全相同的值。

 

 

 

尊重别人的劳动成果 转载请务必注明出处:https://www.cnblogs.com/5201351/p/19653420