yhou31 发表于 2010-03-31 10:55

Informix存储过程中系统调用的问题

写了个存储过程,echo文本到一个本地文件

create procedure proc_test()

define columnA    char(20);
define columnB    char(20);
define columnC    char(20);
define newcolumnA    char(20);
define newcolumnB    char(20);
define newcolumnC    char(20);

define delimiter    char(1);
define record      char(120);

let delimiter = "@";
----------------------------------

foreach cursor with hold for
    select * into columnA,columnB,columnC from aa
   
    --当中会对各字段进行些字符串处理,生成newcolumnA,newcolumnB,newcolumnC。
    let record=newcolumnA||delimiter||newcolumnB||delimiter||newcolumnC;
    system 'echo '||record||' >> /tmp/aa.txt';
end foreach;
end procedure;

在dbaccess中execute procedure proc_test();
执行到100000多行的时候,窗口提示:

668: System command cannot be executed.
   2: No such file or directory

不理解是怎么一回事,请高手指点下,谢谢啦。

liaosnet 发表于 2010-03-31 11:28

2: No such file or directory

不过这个有些莫名奇妙....要是不存在aa.tt,那它应当建立这个文件才对...你试着touch /tmp/aa.txt试下..

yhou31 发表于 2010-03-31 11:31

本帖最后由 yhou31 于 2010-03-31 11:32 编辑

touch是可以的,而且之前都已经产生了100000多条记录的aa.txt文件,怎么执行过程中突然报不行了呢?空间是够的。
页: [1]
查看完整版本: Informix存储过程中系统调用的问题