欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

db2代码编译报错!该怎么处理

更新时间: 2014-01-05 02:24:15 责任编辑: Author_N1

 

db2代码编译报错!急!
各位高手,我在编译C代码时报错,不懂错误原因,请各位指点。

db2inst1@vmhost:~/usr> make
db2 connect to sample user tsp30 using tsp30

   Database Connection Information

 Database server        = DB2/LINUX 10.1.0
 SQL authorization ID   = TSP30
 Local database alias   = SAMPLE

db2 "prep demo.sqc bindfile preprocessor 'gcc -I/home/db2inst1/sqllib/include -DDEBUG -E -o demo.i'" 

LINE    MESSAGES FOR demo.sqc
------  --------------------------------
        SQL0060W  The "C" precompiler is in progress.
   36   SQL4001N  The character "? in column "19" on line "36" is 
                  not valid.
        SQL0095N  No bind file was created because of previous 
                  errors.
        SQL0091W  Precompilation or binding was ended with "2" 
                  errors and "0" warnings.
make: *** [demo] Error 4
------最佳解决方案--------------------
没加过中文,你看看是不是上传的时候,变乱码了。或者,你直接在服务器上改一下。
------其他解决方案--------------------
你看看那行是不是有非法字符,windows和unix的不一样。
------其他解决方案--------------------
     
     29         ret = connectdb(dbname, user, passwd);
     30         if (SQLCODE)
     31         {
     32                 fprintf(stderr, "connect db %d\n", SQLCODE);
     33                 return -1;
     34         }
     35 
     36         fprintf(stderr, "测试connect db success\n");
     37 

------其他解决方案--------------------
第36行因为有中文,这个是我写的一个DEMO程序,想测试宏定义DEBUG
按网上提示编译时候加preprocessor选项,可以对宏进行预编译

但是代码中只要出现中文,就会报上面的错误。

如果不加preprocessor选项,编译:
db2 prep demo.sqc bindfile
db2 bindfile demo.bnd
就不会报错。
------其他解决方案--------------------
我已经搞定了,是数据库本身设置问题
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:24:15
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/9428/
本文WWW.DOC100.NET DOC100.NET版权所有。