免费注册 查看新帖 |

Chinaunix

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

谁使用过mnogosearch这个开源软件? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-04-15 12:01 |只看该作者 |倒序浏览
我在使用mnogosearch编译出来的lib库做开发时候,发现这个问题。

下面这段程序主要是获得表的每个字段的类型,以便在组织sql语句时是否在要插入字段两端是否加上单引号:
  1. snprintf(sqlstr, sizeof(sqlstr), "select * from %s where 1=2", dbtable);
  2.     if (UdmSQLQuery(&internal_db_handle, &rs, sqlstr) != UDM_OK)
  3.     {
  4.       
  5.         return -1;
  6.     }



  7.     memset(sqlstr, 0, sizeof(sqlstr));
  8.     for (i = 0; i < fieldnum; i++)
  9.     {
  10. #ifdef SYBASE
  11.    [color=Red]     if( ((rs.Fields+i)->sqltype == 0)
  12.                 ||  ((rs.Fields+i)->sqltype == 4) )[/color]
  13. #else
  14.             if ((rs.Fields+i)->sqltype == 1 || (rs.Fields+i)->sqltype == 12
  15.                     || (rs.Fields+i)->sqltype == -1) //DB2
  16. #endif
  17.         {
  18.              sprintf(sqlfield, "\'%s\'", filed);
  19.         }
  20.         else
  21.        {
  22.            sprintf("sqlfiled, "%s", filed);
  23.        }
复制代码
红色的部分,表示需要加上引号的字段类型。
但是奇怪的是,在32位下面是正常的,但是在64位下,取到的字段类型始终都是0。


谁有类似的情况,能否解答一下?多谢多谢。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP