Db2 以编程方式从逻辑文件创建视图?

Db2 以编程方式从逻辑文件创建视图?,db2,ibm-midrange,db2-400,Db2,Ibm Midrange,Db2 400,问题是关于IBM i DB2提供的AS/400和视图上的逻辑文件(LF)。 我想知道,是否有办法从逻辑文件中以编程方式生成sql语句(或者更好,直接生成视图) 现在,我查看LF描述(命令WRKF..)并模拟LF中的条件 到目前为止,我的知识是,逻辑文件总是可以手动(也就是说,手动)转换为SQL。。。但是如果有一个陷阱,为什么从来没有一个程序化的方法来实现这一点,我想知道为什么 我正在为此搜索类似IBM I的方法,而不是为此编写我自己的程序。不是编程解决方案,而是在System I Navigat

问题是关于IBM i DB2提供的AS/400和视图上的逻辑文件(LF)。 我想知道,是否有办法从逻辑文件中以编程方式生成sql语句(或者更好,直接生成视图)

现在,我查看LF描述(命令WRKF..)并模拟LF中的条件

到目前为止,我的知识是,逻辑文件总是可以手动(也就是说,手动)转换为SQL。。。但是如果有一个陷阱,为什么从来没有一个程序化的方法来实现这一点,我想知道为什么


我正在为此搜索类似IBM I的方法,而不是为此编写我自己的程序。

不是编程解决方案,而是在System I Navigator中,转到您正在使用的模式和视图部分。任何逻辑文件都可以右键单击并选择“生成SQL”。您可以选择多个,它将为所有对象生成SQL。有一个写入文件的选项

的确,您可以从逻辑文件生成视图,但它与逻辑文件不同。缺少的一部分是钥匙。SQL视图中不能包含逻辑的键。因此,正如@jmarkmurphy所说,您需要分别创建索引(用于键)和视图(用于列选择、派生字段、联接等)。如果要替换按键顺序读取的RPG程序中使用的现有DDS逻辑,请小心-ORDER BY始终需要明确。遗憾的是,无法连接视图和索引以在具有记录级访问(SETLL、CHAIN等)的RPG程序中使用它。除非您不关心记录序列,否则必须切换到嵌入式SQL才能在RPG中使用视图。视图没有键控。您能解释一下为什么要这样做吗?您只是想从DDS转换到DDL以实现现代化吗?如果是这样的话,你最好把逻辑转换成SQL索引,而不是视图。我遇到了一个问题,我想把逻辑文件转换成SQL视图,但它不起作用。所以我倾向于手动将每个逻辑视图转换为SQL视图。。。