修复 ︰ 对于涉及 SQL Server 2014年在标量用户定义函数的查询谓词被低估的行数

重要说明:本文是由 Microsoft 机器翻译软件进行的翻译并可能由 Microsoft 社区通过社区翻译机构(CTF)技术进行后期编辑,或可能是由人工进行的翻译。Microsoft 同时向您提供机器翻译、人工翻译及社区后期编辑的文章,以便对我们知识库中的所有文章以多种语言提供访问。翻译的文章可能存在词汇、句法和/或语法方面的错误。Microsoft 对由于内容的误译或客户对内容的使用所导致的任何不准确、错误或损失不承担责任。

点击这里察看该文章的英文版: 3151176
症状
请考虑以下情形:

  • 有的查询包含涉及参数化标量用户定义函数的谓语。
  • 有多个可能会产生相同的结果,此用户定义的函数的输入的参数值组合。
  • SQL Server 将使用新的数据库兼容模式被设置为 120 的基数评估程序。

在这种情况下,当您运行该查询时,您遇到查询性能低下由于错误地估计在查询计划中涉及的用户定义函数的谓语的行数。
解决方案
第一次以下累积更新 SQL Server 中修复此问题 ︰



在安装此累积更新包之后,您必须启用跟踪标志 4199。若要执行此操作,您可以添加-T4199启动参数。或者,您可以使用 dbcc traceon(4199) 对于特定的会话语句。

有关累积更新 SQL Server
SQL Server 的每个新累积更新包含所有修补程序和所有安全修补程序,已包含在以前的累积更新。为 SQL Server,请查阅最新的累积更新 ︰

状态
Microsoft 已经确认这是"适用于"一节中列出的 Microsoft 产品中的问题。
参考
了解有关 术语 Microsoft 使用来描述软件更新。
注意:本篇“快速发布”文章是从 Microsoft 支持组织直接创建的。 文中包含的信息按原样提供,用于响应紧急问题。 由于发布仓促,材料可能包含印刷错误,并且可能随时修订,恕不另行通知。 有关其他注意事项,请参阅使用条款

警告:本文已自动翻译

属性

文章 ID:3151176 - 上次审阅时间:05/31/2016 06:44:00 - 修订版本: 2.0

Microsoft SQL Server 2014 Developer, Microsoft SQL Server 2014 Enterprise, Microsoft SQL Server 2014 Standard

  • kbqfe kbfix kbexpertiseinter kbsurveynew kbmt KB3151176 KbMtzh
反馈