免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1716 | 回复: 2
打印 上一主题 下一主题

紧急求助,在线等 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-04-11 15:15 |只看该作者 |倒序浏览
我要在我的.ec源代码文件中把一个表的数据卸载成文本.我的写法是:
$unload to /tmp/aaa.txt select * from  table where ......
可是在编译的时候程序报错,错误信息如下:
esqlc: "ICS_dayend_mainctrl.ec", line 632: Error -33200: Invalid statement on sy
mbol 'unload'.
esqlc: "ICS_dayend_mainctrl.ec", line 632: Error -33051: Syntax error on identif
ier or symbol '/'.
请问在.ec程序中能这样写吗?请教正确的写法.

论坛徽章:
0
2 [报告]
发表于 2006-04-11 16:13 |只看该作者

回复 1楼 ccbzj 的帖子

编译不是报错了吗?esql编译器解释不了unload。

建议写个shell,用系统调用执行吧。

论坛徽章:
0
3 [报告]
发表于 2006-04-12 08:49 |只看该作者
shell 调用是一个 方法。
也可以用cursor 循环,fprintf 文件输出。  
   fp = fopen ( "aa.txt","w");

   $declare aa cursor for select * into $var from  tab where ...;
    $open aa;
    $fetch aa;
    while ( SQLCODE == 0 )
    {
       fprintf(fp , "%s|%d|%s|\n",var.c1,var.c2,var.c3);

      $fetch aa;
    }
   $close aa;
   fclose( fp);

[ 本帖最后由 wenlq 于 2006-4-12 08:52 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP