Change Node Group Attributes 命令

Change Node Group Attributes (CHGNODGRPA) 命令更改节点组的数据分区属性。

节点组包含一个包含 1024 个分区的表; 每个分区都包含一个节点号。 节点号是在创建节点组时指定的,对应于 Create Node Group (CRTNODGRP) 命令的 RDB 参数上指定的关系数据库。 使用 Display Node Group (DSPNODGRP) 命令可查看有效的节点号值以及节点号与关系数据库名称之间的关联。

CHGNODGRPA 命令不会影响使用指定节点组创建的任何现有分布式文件。 对于要使用的已更改节点组,必须在创建新文件时或在 Change Physical File (CHGPF) 命令上指定已更改的节点组。 您可以在 "信息中心" 的 "控制语言" 主题中找到有关 CHGNODGRPA 命令的完整详细信息。

第一个示例显示如何更改库 LIB1: 中名为 GROUP1 的节点组的分区属性
CHGNODGRPA NODGRP(LIB1/GROUP1) PTNNBR(1019)
           NODNBR(2)

在此示例中,指定了分区号 1019 ,并且会将散列到 1019 的任何记录写入节点号 2。 这提供了一种将特定分区号定向到节点组中的特定节点的方法。

第二个示例更改名为 GROUP2的节点组的分区属性。 (通过使用库搜索列表 *LIBL 找到GROUP2 。) 比较数据值 (CMPDTA) 参数上指定的值已散列,生成的分区号将从其现有节点号更改为节点号 3。 (在 "分区与 Db2 Multisystem" 中讨论了散列和分区。)
CHGNODGRPA NODGRP(GROUP2) CMPDTA('CHICAGO')
           NODNBR(3)

使用此节点组创建的任何文件,以及具有由字符字段组成的分区键的任何文件,都存储在节点号 3 上的分区键中包含 "CHICAGO" 的记录。 要允许分区键中包含多个字段的文件,可以在比较数据 (CMPDTA) 参数上指定最多 300 个值。

在 CMPDTA 参数上输入值时,您应该知道字符数据区分大小写。 这意味着 "Chicago" 和 "CHICAGO" 不会生成相同的分区号。 数字数据应仅作为数字数字输入; 请勿使用小数点,前导零或后跟零。

将对所有值进行散列以获取分区号,然后将该分区号与节点号 (NODNBR) 参数上指定的节点号相关联。 完成消息的文本 CPC3207显示已更改的分区号。 请注意,通过多次发出 CHGNODGRPA 命令并针对许多不同的值,可以增加两次更改同一分区号的机会。 如果发生此情况,那么对最新更改指定的节点号将对节点组生效。