适用于 Microsoft Dynamics NAV 的数据库检查工具的新版本

应用对象
Dynamics NAV 2013 R2 Microsoft Dynamics NAV 2015 Dynamics NAV 2016

本文适用于所有国家/地区和所有语言区域设置的 Microsoft Dynamics NAV。

简介

适用于 Microsoft Dynamics NAV 的新数据库检查工具检查Microsoft Dynamics NAV 对象元数据快照表与SQL Server (CheckSnapshot) 或检查并选择性地更正代码数据类型 (FindInvalidCodeFields) 中的无效空格字符。 可以将该工具用于 Microsoft Dynamics NAV 2013 R2 及更高版本 (,例如,Microsoft Dynamics NAV 2015 和 Microsoft Dynamics NAV 2016) 。

此工具替换作为修补程序 KB2963997 发布的早期版本。

注意 Microsoft建议在运行数据库检查器工具之前备份目标数据库。

CheckSnapshot

当Microsoft Dynamics NAV 将更改应用于 SQL Server 中的表设计时,这些更改是根据对象元数据表(Microsoft Dynamics NAV 应用程序数据库的一部分)与对象元数据快照表(位于 Microsoft Dynamics NAV 租户数据库中)之间的差异来计算的。 如果“对象元数据快照”表不包含SQL Server中实际表设计的准确视图,则Microsoft Dynamics NAV 服务器可能无法对该表的设计应用更改,Microsoft Dynamics NAV 无法访问数据库。

如果该工具报告了问题,则可通过不同的方法来解决问题。 解决此问题的一个选项是手动将SQL Server中的表 () 与Microsoft Dynamics NAV 元数据对齐。 例如,可以创建缺少的表、索引或字段。 另一个选项是Microsoft Dynamics NAV 元数据与SQL Server保持一致。 执行此操作的方法是在 Microsoft Dynamics NAV 开发环境中进行更改,以便表适合SQL Server布局。 然后运行以下语句以更新快照:

declare @objectId int = 3
update [Object Metadata Snapshot] set Metadata = (select Metadata from [Object Metadata]
其中 [对象类型]=1 和 [对象 ID]=@objectId) 其中 [对象类型] = 1 和 [对象
ID]=@objectId

用于检查数据库的语法
NavCheckDatabase CheckSnapshot [-Server] <字符串> [-Database] <字符串> [-AppDatabase] <字符串> 

参数说明:

服务器:要对其运行命令的数据库服务器的名称。 若要指定本地计算机,请指定“.”。
数据库:要检查的数据库的名称,例如 DynamicsNAVDB。
AppDatabase:应用程序数据库的名称,例如 MyAppDB。

如果未指定 appdatabasename,则假定应用程序和租户数据库 (旧模式) 相同,例如:

NavCheckDatabase CheckSnapshot 。 DynamicsNAVDB

FindInvalidCodeFields

数据库检查工具还可以查找和更正 Microsoft Dynamics NAV 数据库代码字段.NET Framework) 定义的无效空格 (。 该工具遍历和读取所有数据,并计算、显示或修复包含空格的现有代码字段。

如果该工具报告了问题,还可以通过设置 Extended 参数来查找哪些记录包含空格;使用它时,它还会显示包含空格的记录的剪裁值。

如果希望工具修改此数据,请设置 –Modify 参数。 如果设置 Modify 参数,该工具将读取所有代码数据,找到包含空格的记录,并删除代码值开头和末尾的空格。 Microsoft Dynamics NAV 服务器在处理代码字段时也使用这些经过剪裁的值。

语法
NavCheckDatabase FindInvalidCodeFields [-Server] <字符串> [-Database] <字符串> [AppDatabase] <字符串> [-Extended] [-Modify]

参数说明:
  
服务器:要对其运行命令的数据库服务器的名称。 若要指定本地计算机,请指定“.”。
数据库:要检查的数据库的名称,例如 DynamicsNAVDB。
AppDatabase:应用程序数据库的名称,例如 MyAppDB。
扩展:指定结果是否必须返回具有无效空格的剪裁记录。
修改:指定工具是否必须使用空格剪裁代码字段的值,并在SQL Server数据库中更新它们。

使用 FindInvalidCodeFields 时,不建议使用 appdatabasename,例如:

NavCheckDatabase FindInvalidCodeField 。 DynamicsNAVDB

详细信息

修补程序信息

Microsoft 提供了一个受支持的修补程序。 此知识库文章顶部有一个“修补程序下载可用”部分。 如果你在下载、安装此修补程序时遇到问题,或者遇到其他技术支持问题,请联系合作伙伴,或者如果直接使用 Microsoft 注册支持计划,则可以联系 Microsoft Dynamics 的技术支持并创建新的支持请求。 为此,请访问以下 Microsoft 网站:

https://mbs.microsoft.com/support/newstart.aspx 还可以使用这些特定国家/地区电话号码的链接通过电话联系 Microsoft Dynamics 的技术支持。 为此,请访问以下Microsoft网站之一:

合作伙伴

https://mbs.microsoft.com/partnersource/global/support/support-news/support_telephone 客户

https://mbs.microsoft.com/customersource/Global/NAV/support/support-news/support_telephone 在特殊情况下,如果 Microsoft Dynamics 和相关产品的技术支持专业人员确定特定更新将解决你的问题,则通常由支持呼叫产生的费用可能会被取消。 通常的支持成本将适用于不符合特定更新条件的任何其他支持问题和问题。

如何获取Microsoft Dynamics NAV 修补程序或更新文件

请求Microsoft Dynamics NAV 修补程序后,将在电子邮件中向你发送超链接。

电子邮件将包含超链接。 可以使用超链接下载Microsoft Dynamics NAV 修补程序或更新文件。 单击超链接时,将打开 “文件下载 – 安全警告 ”对话框。 然后,系统会提示你运行、保存或取消下载。

如果单击“ 运行”,则文件将启动下载和提取过程。 必须为新文件指定文件夹,然后提供密码。

如果单击“ 保存”,则必须指定用于保存压缩文件的路径。 打开保存的文件时,系统会提示指定文件的路径。

如果单击“ 取消”,下载过程将停止。

先决条件

必须安装 Microsoft Dynamics NAV 2013 R2、Microsoft Dynamics NAV 2015 或 Microsoft Dynamics NAV 2016 才能应用此修补程序。

文件信息

此修补程序的全局版本具有下表中列出的文件属性 (或更高版本的文件属性) 。 这些文件的日期和时间以协调世界时 (UTC) 格式列出。 在查看文件信息时,文件时间将转换为本地时间。 要了解 UTC 与本地时间之间的时差,请使用“控制面板”中“日期和时间”项中的“时区”选项卡。

状态

Microsoft 已确认在 "适用于" 部分中所列的 Microsoft 产品中存在问题。

详细信息

有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

824684 用于描述软件更新Microsoft标准术语的说明

注意这是一篇由 Microsoft 支持组织直接创建的“快速发布”文章。 本文所包含的信息是按原样提供的,以应对新出现的问题。 由于发布速度较快,这些材料可能包含印刷错误,无需通知即可随时修改。 有关其他注意事项,请参阅使用条款