Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 将表转换为物理文件AS400/DB2_Sql_Db2_Ibm Midrange - Fatal编程技术网

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

Sql 将表转换为物理文件AS400/DB2,sql,db2,ibm-midrange,Sql,Db2,Ibm Midrange,为清晰起见进行了编辑: 我已经使用SQL在DB2中创建了一个表。 我现在意识到,我不知道创建的物理文件的记录格式,需要一个逻辑文件来定义RPG代码中使用的键。如何使用SQL而不是DDS来实现这一点 这正是我想问的,真的,现在我对这个主题有了更多的了解。用DDS创建的PF和用SQL DDL创建的表之间真的没有区别 这两种方法都会生成一个属性为PF的*FILE对象 任何一种方法产生的对象都可以与SQL或RPG记录级访问(RLA)一起使用 您可以在DDS创建的PF或SQL DDL创建的表上创建DDS

为清晰起见进行了编辑:

我已经使用SQL在DB2中创建了一个表。 我现在意识到,我不知道创建的物理文件的记录格式,需要一个逻辑文件来定义RPG代码中使用的键。如何使用SQL而不是DDS来实现这一点


这正是我想问的,真的,现在我对这个主题有了更多的了解。

用DDS创建的PF和用SQL DDL创建的表之间真的没有区别

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

任何一种方法产生的对象都可以与SQL或RPG记录级访问(RLA)一起使用

您可以在DDS创建的PF或SQL DDL创建的表上创建DDS LF或SQL视图/索引

IBM提供了为DDS创建的对象生成SQLDDL的工具,但不是相反。如果您丢失了DDS源,您可能会找到设计用于生成DDS的第三方工具

现在的最佳实践是使用SQLDDL;因为在使用DDS时,DB的许多最新增强功能都不可用

例如,如果您认为需要使用DDS与RPG兼容,那么您就错了。您所需要做的就是利用ibmi特定的关键字

而不是

create table my_long_table_name (
  my_long_column_name  char(10)
);
使用


使用DDS创建的PF和使用SQLDDL创建的表之间实际上没有区别

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

任何一种方法产生的对象都可以与SQL或RPG记录级访问(RLA)一起使用

您可以在DDS创建的PF或SQL DDL创建的表上创建DDS LF或SQL视图/索引

IBM提供了为DDS创建的对象生成SQLDDL的工具,但不是相反。如果您丢失了DDS源,您可能会找到设计用于生成DDS的第三方工具

现在的最佳实践是使用SQLDDL;因为在使用DDS时,DB的许多最新增强功能都不可用

例如,如果您认为需要使用DDS与RPG兼容,那么您就错了。您所需要做的就是利用ibmi特定的关键字

而不是

create table my_long_table_name (
  my_long_column_name  char(10)
);
使用


谢谢你的提示,我会试试的早上好,查尔斯。我已经尝试了“for”关键字,但我得到了一个语法错误。。。“关键字FOR not expected”最后的rcdfmt应该有一个不同于表的名称?显示您的源代码。查尔斯举的例子毫无错误。没有源代码,我们无法帮助您。
RCDFMT
名称可以是您想要的任何名称…历史上,DDS文件的记录格式名称与PF名称不同。感谢您提供的提示,我将尝试一下早上好Charles。我已经尝试了“for”关键字,但我得到了一个语法错误。。。“关键字FOR not expected”最后的rcdfmt应该有一个不同于表的名称?显示您的源代码。查尔斯举的例子毫无错误。没有源代码,我们无法帮助您。
RCDFMT
名称可以是您想要的任何名称……历史上,DDS文件的记录格式名称不同于PF名称。使用SQL创建的表是一个物理文件。重新开始,这样你就不会混淆你的同事。用SQL完成什么?如果您询问如何创建SQL索引,请运行SQLCREATEINDEX语句。或者你是在问记录格式,如果是的话,它们是什么?@therealchx101看你如何重新开始下面的答案是create语句。重新开始。使用SQL创建的表是一个物理文件。重新开始,这样你就不会混淆你的同事。用SQL完成什么?如果您询问如何创建SQL索引,请运行SQLCREATEINDEX语句。或者你是在问记录格式,如果是的话,它们是什么?@therealchx101看你如何重新开始下面的答案是create语句。重新开始。