有人可以帮我创建一个物理文件,其中参考字段放在数据字典中。如何在物理文件中对其进行编码以便与数据字典进行链接。提前致谢。
答案 0 :(得分:2)
除非有特殊原因,最值得注意的是在S / 36执行环境中运行时保持与System / 36的兼容性,否则在任何正在运行的系统上都不会使用数据字典(* DTADCT)对象使用IBM i OS。它们的使用已被弃用;数据库文件应该使用SQL数据定义语言(DDL)创建,或者必要时根据其他一些[主要用于兼容性]问题创建,然后可能使用数据定义规范(DDS)创建。那说......
物理数据库文件(PF)可以直接从数据字典(* DTADCT)对象中的定义创建,使用选项1 =创建取自使用数据库文件面板调用使用IDDU (WRKDBFIDD)命令处理数据库文件。创建的文件将隐式链接到文件定义;即,在创建程序描述的数据库文件后,不需要使用例如构建文件(BLDFILE)OCL命令或包含记录长度(RCDLEN)的创建物理文件(CRTPF)命令来影响链接数据定义(LNKDTADFN)规格。注意:1 = Create将尝试始终创建外部描述的文件,以便维护链接的值有些下降。
定义和创建指定记录格式定义的文件定义,选择要包括的字段将使用交互式数据定义实用程序(IDDU)实现,如Charles已经提到的那样。从前面提到的接口[WRKDBFIDD],有F21 = 使用定义来访问存储在数据字典中的定义;或者从命令行,通过使用数据定义(WRKDTADFN)命令到达同一位置的请求。
有IDDU用户指南:
http://publib.boulder.ibm.com/infocenter/iseries/v6r1m0/topic/rzatc/sc415704.pdf
答案 1 :(得分:1)
回到System / 36,有一个称为交互式数据定义实用程序(IDDU)的实用程序,它将字段定义存储在数据字典中。
该实用程序被提交到AS / 400上。您可以使用“创建数据字典”(CRTDDTADCT)命令为要使用的IDDU创建数据字典。
显然,即使在今天运行IBM i的POWER系统上,该命令仍然受支持。 IBM Knowledge Center
然而,自1996年以来我一直在这个平台上,我从未见过或听说过它被使用过。 IDDU对原始AS / 400有限制,更不用说今天的系统了。
相反,标准做法是使用DDS或SQL DDL创建“字段引用文件”。显然,SQL DDL是首选,因为DB中的许多新功能只能与SQL定义的表一起使用。
字段引用文件/表就像任何其他文件/表一样。除非您不使用它来存储数据,否则只在定义另一个文件/表时使用它。
create table MY_DATA_DICT (
name char(50) not null with default
address char(50) not null with default
...
)
然后你可以使用它
create table CUSTOMERS
(name, address_1, address_2)
as (select name, address, address
from MY_DATA_DICT
)
with no data
--below are some copy option you may or may not want
including column defaults
including identity column attributes
including implicitly hidden
including row change timestamp