开发者社区> 问答> 正文

VC++2010利用Occi处理Oracleo数据库getString方法报错的问题 ?报错

Oraccle版本:Oracle11g 11.2.0.1
Oracel的Instant Client版本11.2.0.3
Oracle For VC++2010运行库instantclient-basic-nt-11.2.0.3.0.zip

在 ResultSet->getString 时定义:
static string str = ResultSet->getString(1);可以通过,
但 string str = ResultSet->getString(1)报错,

如果ResultSet有多条记录时,由于str是静态变量,无法改变值,求大侠们的解决办法!

我试过用:
Oracel的Instant Client版本11.2.0.4

Oracle For VC++2010运行库instantclient-basic-nt-11.2.0.4zip
但无法建立连接

请高手指点!

展开
收起
爱吃鱼的程序员 2020-06-23 13:36:21 823 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    到底报什么错。应该不是static的原因。
    下断点看ResultSet里面都有什么。

    没必要用static静态变量啊。都提示你了

    不使用static,就报错了!程序非法终止!

    应该执行的语句

    执行顺序时DIBUG内容如下:

    此时ResultSet集里的内容如下:

    最后一条语句执行完以后:

    接上:

    如果把:stringstr=cDBDialog->m_ResultSet->getString(2);
    改成:staticstringstr=cDBDialog->m_ResultSet->getString(2);
    则不会报错!

    求大侠指点!

    2020-06-23 13:36:36
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
2022 DTCC-阿里云一站式数据库上云最佳实践 立即下载
云时代的数据库技术趋势 立即下载
超大型金融机构国产数据库全面迁移成功实践 立即下载