Ibm midrange 我们可以对SQLRPLE中的多个列使用逗号分隔的字段执行相同的操作吗?

Ibm midrange 我们可以对SQLRPLE中的多个列使用逗号分隔的字段执行相同的操作吗?,ibm-midrange,db2-400,rpgle,Ibm Midrange,Db2 400,Rpgle,我们可以解析来自第三方的逗号分隔字符串,并将其移动到SQLRPGLE中文件的多个列吗 假设我们有一个字段,其中包含MFG、9876、0001123435到多列Site=MFG、Parent Item=9876、revision=''、sequence=0001、component Item=12345等?当您收到CSV文件时,将其存储在IFS中。然后,使用CPYFRMIMPF命令将文件加载到数据库文件中是一个简单的操作。使用SQL将CSV插入表中。 创建字符串并立即执行 mstring = 'i

我们可以解析来自第三方的逗号分隔字符串,并将其移动到SQLRPGLE中文件的多个列吗
假设我们有一个字段,其中包含MFG、9876、0001123435到多列Site=MFG、Parent Item=9876、revision=''、sequence=0001、component Item=12345等?

当您收到CSV文件时,将其存储在IFS中。然后,使用
CPYFRMIMPF
命令将文件加载到数据库文件中是一个简单的操作。

使用SQL将CSV插入表中。 创建字符串并立即执行

mstring = 'insert into mytable (col1, col2 , col3) values (' + mydata + ')';

exec immediate :mystring;

可以对这个类似问题的答案进行一些更改:关闭
:mydata
,如果正确引用字符串值,这可能会起作用。但在SQL注入上下文中,我认为这有点危险。如果CSV是完美的,CPYFRIMPF就可以使用一次。如果不是这样的话,请考虑使用IFS API来读取和解析CSV自己。<代码> cPyFrimIMP自动化是很好的,并不是所有的都是变化无常的。是的,您可以编写自己的解析器,但是如果内置解析器可以工作,为什么还要编写自己的解析器呢。这似乎类似于过早优化。