如何在DB2Version7.1中识别主键列

如何在DB2Version7.1中识别主键列,db2,db2-400,Db2,Db2 400,我正在使用DB2Version7.1,并尝试查询主键列名以满足我的一个需求。我尝试过谷歌搜索,但找不到任何与DB27.1相关的内容 我对DB2了解不多,因此在查找BD2 7.1版的主键列时寻求帮助。期待在这方面得到积极的帮助。如果您正在使用Db2 for i-Series(以前是/400),正如您在问题上提出的Db2-400标记所建议的那样,请检查目录QSYS2.SYSCST-它有一个列约束类型,其主键的值为“p”。您可能需要与其他目录对象(例如QSYS2.SYSTABLES、QSYS2.SYS

我正在使用DB2Version7.1,并尝试查询主键列名以满足我的一个需求。我尝试过谷歌搜索,但找不到任何与DB27.1相关的内容


我对DB2了解不多,因此在查找BD2 7.1版的主键列时寻求帮助。期待在这方面得到积极的帮助。

如果您正在使用Db2 for i-Series(以前是/400),正如您在问题上提出的Db2-400标记所建议的那样,请检查目录QSYS2.SYSCST-它有一个列约束类型,其主键的值为“p”。您可能需要与其他目录对象(例如QSYS2.SYSTABLES、QSYS2.SYSCOLUMNS)连接,具体取决于您所查找的内容的详细信息


DB2fori系列R7.1的知识中心仍然是

如果您使用Db2 for i-Series(以前是/400),正如您在问题上添加的Db2-400标记所建议的那样,请检查目录QSYS2.SYSCST-它有一个列约束类型,其主键的值为'p'。您可能需要与其他目录对象(例如QSYS2.SYSTABLES、QSYS2.SYSCOLUMNS)连接,具体取决于您所查找的内容的详细信息


DB2fori系列R7.1的知识中心仍然是

根据应用程序的使用年限,您可能无法在SQL目录中找到它。不幸的是,许多(大多数?)RPG应用程序没有使用DB2数据库的全部功能,包括索引、视图和约束。这种情况变化很慢,但很可能您必须查找具有唯一键的逻辑文件。可能没有定义主键。您可以在SQL目录中查找,但是如果您没有找到您要查找的内容,以下内容更有可能会有所帮助

  • 使用
    DSPDBR
    查找与物理文件(表)关联的逻辑文件。如果不知道命令行应该是什么样子,可以按F4键提示输入参数

  • 如果您可以找到逻辑文件的源(可能在源文件QDDSRC中),请检查该源,如果在记录格式行上方有关键字
    UNIQUE
    ,则可以将其视为主键,或者至少是唯一键。确保源底部没有记录选择。可能有多个这样的逻辑文件

  • 确定逻辑文件是否具有唯一密钥的另一种方法是使用
    DSPFD
    命令。然后在结果屏幕中搜索“唯一”。屏幕应如下所示:

  • 文件…:QPDSPFD 控制 找到。独特的 *...+....1....+....2....+....3....+....4....+....5....+....6....+....7.. 访问路径维护:维护*IMMED 所需的唯一键值……:独特的是 选择/忽略指定的………:不 访问路径日志………:不 访问路径键控 关键字段的数量………:3. 记录格式………:JCNCXR 关键字段XFNCMNO 顺序提升 指定标志…………:签署 指定的区域/数字………:*没有一个 备选排序顺序…:不 关键字段XFJOBYR 顺序提升 指定标志…………:签署 指定的区域/数字………:*没有一个 备选排序顺序…:不 关键字段XFJOBNO 顺序提升 行
    所需的唯一键值……:唯一是
    表示逻辑文件包含唯一密钥。以下行<代码>选择/忽略指定的………:否表示逻辑文件中没有记录选择逻辑,因此它包含物理文件中的所有记录。底部的线条按顺序显示关键字段。这与逻辑文件中的主键非常接近。由于与物理文件相关的每个逻辑文件都可以具有唯一的密钥,因此大多数应用程序将使用命名来标识主键,有时文件名上会有L00或L01后缀

    更为复杂的是,物理文件本身可以被唯一地设置密钥。您可以查看源代码,也可以使用
    DSPFD
    来确定


    这些是DB2fori的一些独特之处,在其他版本的DB2中是不可用的。而且,以前RPG程序员只使用物理和逻辑文件,而不使用DB2数据库的SQL特性。

    根据应用程序的使用年限,您可能无法在SQL目录中找到它。不幸的是,许多(大多数?)RPG应用程序没有使用DB2数据库的全部功能,包括索引、视图和约束。这种情况变化很慢,但很可能您必须查找具有唯一键的逻辑文件。可能没有定义主键。您可以在SQL目录中查找,但是如果您没有找到您要查找的内容,以下内容更有可能会有所帮助

  • 使用
    DSPDBR
    查找与物理文件(表)关联的逻辑文件。如果不知道逗号是什么,可以按F4键提示输入参数 File . . . . . : QPDSPFD Control . . . . . __________ Find . . . . . . Unique *...+....1....+....2....+....3....+....4....+....5....+....6....+....7.. Access path maintenance . . . . . . . . . . : MAINT *IMMED Unique key values required . . . . . . . . : UNIQUE Yes Select/omit specified . . . . . . . . . . . : No Access path journaled . . . . . . . . . . . : No Access path . . . . . . . . . . . . . . . . : Keyed Number of key fields . . . . . . . . . . . : 3 Record format . . . . . . . . . . . . . . . : JCNCXR Key field . . . . . . . . . . . . . . . . : XFNCMNO Sequence . . . . . . . . . . . . . . . : Ascending Sign specified . . . . . . . . . . . . : SIGNED Zone/digit specified . . . . . . . . . : *NONE Alternative collating sequence . . . . : No Key field . . . . . . . . . . . . . . . . : XFJOBYR Sequence . . . . . . . . . . . . . . . : Ascending Sign specified . . . . . . . . . . . . : SIGNED Zone/digit specified . . . . . . . . . : *NONE Alternative collating sequence . . . . : No Key field . . . . . . . . . . . . . . . . : XFJOBNO Sequence . . . . . . . . . . . . . . . : Ascending