Db2 通过Cl程序将CSV文件从AS400导出到我的电脑

Db2 通过Cl程序将CSV文件从AS400导出到我的电脑,db2,ibm-midrange,cl,clp,Db2,Ibm Midrange,Cl,Clp,我想将通过查询创建的数据库文件以csv文件的形式从AS400计算机导出到我的pc 有没有办法通过cl程序建立AS400和我的电脑之间的连接 我想做的事情可以从以下代码中得到: CLRPFM DTABASENAME RUNQRY QRY(QRYTEST1) CHGVAR VAR(

我想将通过查询创建的数据库文件以csv文件的形式从AS400计算机导出到我的pc

有没有办法通过cl程序建立AS400和我的电脑之间的连接

我想做的事情可以从以下代码中得到:

CLRPFM     DTABASENAME                         
RUNQRY     QRY(QRYTEST1)             
                   
                                        
CHGVAR     VAR(&PATH)  VALUE('C:\TESTS')     
CHGVAR     VAR(&PATH1) VALUE('C:\TESTS')    
CHGVAR     VAR(&CMD)   VALUE(%TRIM(&PATH) *CAT '/DTABASENAME.CSV' !> &PATH !> &PATH1)                     
                                                               
STRPCO     PCTA(*YES)                                        
STRPCCMD   PCCMD(&CMD) PAUSE(*YES)  
在我以某种方式获取数据库文件的地方,在我的pc中给出我希望它保存的路径,最后相应地运行pc命令

查看
从查询文件复制(CPYFRMQRYF)
这将允许您从查询中创建数据库物理文件

您还可以查看
复制到导入文件(CPYTOIMPF)
将数据从数据库物理文件复制到集成文件系统(IFS)流文件(如.CSV);您可以在PC上找到哪些类型的文件。
例:

然而,并没有一个命令可以将数据传输到您的PC。从技术上讲,我想这不是真的。如果在PC上配置(SMB或NFS)文件共享并配置IBM SMB或NFS客户端;实际上,您可以将CPYTOIMPF直接复制到该文件共享,或者使用Copy Object(CPY)命令将IFS复制到网络共享

如果您的电脑有可用的FTP服务器,您可以通过IBMi的FTP客户端发送数据。类似地,如果您的PC上有SSH服务器,则可以通过PASE使用OpenSSL,并且可以使用SFTP或SCP。你也可以通过电子邮件从i

而不是试图将文件从i.com发送到你的电脑。一个更简单的解决方案是在运行下载的PC上启动一个进程。我的首选是Access客户端解决方案(ACS)数据传输

您可以配置并保存(作为.dtfx文件)传输

然后你可以用一个
strpcmd cmd('java-jarc:\ACS\acsbundle.jar/plugin=download C:\testacs.dtfx')

更详细的信息可以在文档中找到

ACS下载组件是基于SQL的,因此您可能根本不需要使用Query/400


谢谢您的回答!更具体地说,如果我已经有了一个数据库文件和一台带有ftp服务器的pc,我需要的是使用cpytoimpf命令并将我的数据库文件保存到pc中的流文件中?我还需要通过strpcmd运行一些东西吗?您可以编写ibmi内置FTP客户端的脚本,但我强烈建议
CPYTOIMPF FROMFILE(MYLIB/MYPF) TOSTMF('/home/myuser/DTABASENAME.CSV') RCDDLM(*CRLF) DTAFMT(*DLM) STRDLM(*DBLQUOTE) STRESCCHR(*STRDLM) RMVBLANK(*TRAILING) 
FLDDLM(',')