VERIFY 命令

概念信息

验证数据

检查 Analytics 表中的一个或多个域中是否存在数据有效性错误,方法是验证有关数据是否与表布局中的域定义一致。

语法

VERIFY {<FIELDS> 域名称 <...n>|<FIELDS> ALL <EXCLUDE 域名称 <...n>>} <IF test> <WHILE 测试> <FIRST 范围|NEXT 范围> <ERRORLIMIT n> <TO {SCREEN|文件名|PRINT}> <APPEND>

参数

名称 描述
FIELDS 域名称 <...n> | FIELDS ALL

要验证的域或表达式。指定 ALL 可验证该表中的所有域。

说明

按照定义,计算域、临时表达式和二进制域总是有效的。

EXCLUDE 域名称

可选

仅在使用 FIELDS ALL 验证时有效。

要从该命令中排除的一个或多个域。EXCLUDE 让您可以通过排除指定的域,来调整 ALL 关键字。

如果要添加源自一个或多个相关表的字段,则 EXCLUDE 必须紧跟在 FIELDS ALL 之后,或 ALL 关键字最后一次出现的位置之后。例如:

FIELDS ALL EXCLUDE 域 1 域 2
FIELDS ALL 关联表名称.ALL EXCLUDE 域 1 域 2

IF 测试

可选

一个条件表达式,它必须为真以便处理每个记录。仅对满足条件的那些记录执行该命令。

说明

在应用任何范围参数(WHILE、FIRST、NEXT)之后,仅针对表中的剩余记录评估 IF 条件。

WHILE 测试

可选

一个条件表达式,它必须为真以便处理每个记录。该命令被一直执行到条件的计算结果为假或者到达表的末尾为止。

说明

如果您将 WHILE 与 FIRST 或 NEXT 结合使用,请在达到一个限制时立即记下处理步骤。

FIRST 范围 | NEXT 范围

可选

要处理的记录数:

  • FIRST 从第一个记录开始处理,直到达到指定的记录数为止
  • NEXT 从当前选定的记录开始处理,直到达到指定的记录数为止

请使用范围指定要处理的记录数。

如果您省略 FIRST 和 NEXT,则会默认处理所有记录。

ERRORLIMIT n

可选

允许的误差数,达到此数量就会终止该命令。默认值为 10。

TO SCREEN | 文件名| PRINT

可选

要将命令结果发送到的位置:

  • 屏幕 – 在 Analytics 显示区域中显示结果

    提示

    您可以单击显示区域中的任何链接结果值以向下追溯到源表中的关联记录。

  • 文件名将结果保存至文件

    请将文件名指定为具有适当文件扩展名的带引号的字符串。例如:TO "Output.TXT"

    默认情况下,该文件被保存到包含 Analytics 项目的文件夹。

    请使用绝对或相对文件路径将该文件保存到另外的现有文件夹:

    • TO "C:\Output.TXT"
    • TO "Results\Output.TXT"
  • PRINT 将结果发送到默认打印机

APPEND

可选

将命令输出附加到现有文件的末尾,而不是覆盖现有文件。

说明

您必须确保命令输出的结构和现有文件完全相同:

  • 相同的域
  • 相同的域顺序
  • 匹配的域具有相同的长度
  • 匹配的域具有相同的数据类型

Analytics 将输出附加到现有文件,而无论其结构如何。如果输出的结构和现有文件不匹配,则可能生成混乱的、不完整的或不准确的数据。

Analytics 输出变量

名称 包含
WRITEn

该命令验证的所有域中的数据有效性错误的总数。

示例

验证数据并指定错误限额

您验证表中的所有列并且将错误限额设置为 10。如果检测到 10 个数据有效性错误,则该命令停止处理:

VERIFY ALL ERRORLIMIT 10 TO "ImportErrors.txt"

备注

工作原理

VERIFY 命令将一个或多个域中的数值与为表布局中的每个域指定的数据类型进行比较,并报告任何错误。此命令确保以下:

  • 字符域仅包含有效字符,并且不存在不可打印的字符
  • 数值域仅包含有效的数值数据。除了数值以外,数值域还可以包含一个前导加号或减号和一个小数点
  • 日期时间域包含有效的日期、日期时间或时间

对于标识的每个错误,记录号和域名输出时带十六进制格式的无效值。