将表转换为物理文件AS400 / DB2

时间:2017-05-09 17:46:53

标签: sql db2 ibm-midrange

为清晰起见,已编辑:

我使用SQL在DB2中创建了一个表。 我现在意识到我不知道创建的物理文件的记录格式,并且需要一个逻辑文件来定义要在RPG代码中使用的密钥。如何使用SQL而不是DDS实现此目的?

这就是我想问的问题,真的,现在我对这个问题了解得更多。

1 个答案:

答案 0 :(得分:3)

使用DDS创建的PF与使用SQL DDL创建的表之间确实没有区别。

两种方法都会生成一个属性为PF的* FILE对象。

任一方法的结果对象都可以与SQL或RPG记录级别访问(RLA)一起使用。

您可以通过DDS创建的PF或SQL DDL创建的表创建DDS LF或SQL视图/索引。

IBM提供了为DDS创建的对象生成SQL DDL的工具,但不是相反。如果丢失DDS源,您可以找到专门用于生成DDS的第三方工具。

现在的最佳做法是使用SQL DDL;因为使用DDS时,数据库的最新增强功能不可用。

例如,如果您认为需要使用DDS与RPG兼容,那么您就不正确了。您需要做的就是利用IBM i特定的关键字。

而不是

create table my_long_table_name (
  my_long_column_name  char(10)
);

使用

create table my_long_table_name      
         for system name mytable (   
  my_long_column_name                
     for mycol char(10)              
) rcdfmt mytabler;