Microsoft 将 Microsoft SQL Server 2012 修复分发为一个可下载文件。 由于修补程序是累积的,因此每个新版本都包含以前的 SQL Server 2012 修复版本附带的所有修补程序和所有安全修补程序。
症状
请考虑以下情况:
-
你有一个 Microsoft SQL Server Reporting Services (SSRS)实例,该实例配置为在 Microsoft SharePoint 集成模式下运行。
-
对 SSRS 实例有多个数据驱动的订阅。
-
将 SSRS 实例升级到 SSRS 2012。
-
您尝试在 SharePoint 网站中查看数据驱动的订阅。
在这种情况下,您会收到以下错误消息:
值不能为 null。 参数名称: obj 解决 Microsoft SharePoint Foundation 问题。 相关 ID: 数字日期和时间: 日期时间
原因
出现此问题的原因是,dbo 的 DataSettings 列中缺少以下标记 。 升级 SSRS 后现有数据驱动订阅中的订阅表:
-
CaseSensitivity
-
AccentSensitivity
-
KanatypeSensitivity
-
WidthSensitivity
解决方案
累积更新信息
SQL Server 2012 SP1 的累积更新2
此问题的修补程序首次在累积更新2中发布。有关如何获取此累积更新包的 SQL Server 2012 SP1 的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
2790947 SQL Server 2012 的累积更新包 2 Service Pack 1注意 由于这些版本是累积的,因此每个新的修复版本都包含了以前的 SQL Server 2012 SP1 修补程序版本附带的所有修补程序和所有安全修补程序。 我们建议你考虑应用包含此修补程序的最新修复版本。 有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
2772858 在发布 SQL Server 2012 Service Pack 1 之后发布的 SQL Server 2012 版本
SQL Server 2012 累积更新5
此问题的修补程序首次在累积更新5中发布。有关如何为 SQL Server 2012 获取此累积更新包的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
2777772 SQL Server 2012 累积更新程序包5注意 由于这些版本是累积的,因此每个新的修复版本都包含以前的 SQL Server 2012 修复版本附带的所有修补程序和所有安全修补程序。 我们建议你考虑应用包含此修补程序的最新修复版本。 有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
2692828 在 SQL Server 2012 发布后发布的 SQL Server 2012 版本
解决方法
若要解决此问题,请手动将缺少的标记添加到 DataSettings 列。 有关如何添加标记的详细信息,请参阅 "详细信息" 部分。
状态
Microsoft 已确认这是在“适用范围”部分中列出的 Microsoft 产品存在的问题。
更多信息
若要将标记添加到 DataSettings 列,请运行以下脚本:DECLARE @subid as uniqueidentifierDECLARE @orig_string nvarchar(max)DECLARE @new_string nvarchar (max)SET @subid = '<SubscriptionID>' // You input your SubscriptionID here.SET @orig_string = CAST((SELECT DataSettings FROM dbo.Subscriptions where SubscriptionID = @subid) AS nvarchar(max))SET @new_string = STUFF(@orig_string, len(@orig_string) - 9, 0, '<CaseSensitivity>True</CaseSensitivity><AccentSensitivity>True</AccentSensitivity><KanatypeSensitivity>True</KanatypeSensitivity><WidthSensitivity>True</WidthSensitivity>')UPDATE dbo.Subscriptions SET DataSettings = @new_string where SubscriptionID = @subid