【问题标题】:In what conditons DB will not close the cursor when executing a select query from cpp?从 cpp 执行选择查询时,DB 在什么情况下不会关闭游标?
【发布时间】:2019-01-03 06:30:35
【问题描述】:

我在 cpp 中有一段代码转换为如下所示:

DBConnection dbConn;
SelectStatement selectStatement;
while (SOME_CONDITION){
1.Add conditon to selectStatement;
2.Execute select statement;
3.resultSet.next()
}

我观察到的是每次运行 while 循环时它不会关闭游标而是创建一个新游标。 请提出相同的原因和可能的解决方案。

【问题讨论】:

  • 您使用的是什么数据库 API?它的文档对此有何评论?
  • 您还应该更新您的帖子以包含一个最小的完整示例,而不是伪代码。
  • 抱歉,Shawn,但我不能将代码的任何部分添加为专有代码。
  • Mat,我会得到这个信息并回复你。
  • Mat , 我们使用 ORA11G OCI 进行连接

标签: c++ sql database database-cursor


【解决方案1】:

这是因为相同的变量被用来创建新的连接并在那里关闭它。但似乎有一个概念,直到变量被销毁 Oracle 保持游标打开,并且对于任何新的游标需求,它将创建一个新的游标。

【讨论】:

    猜你喜欢
    • 2021-12-25
    • 2012-09-07
    • 2015-03-13
    • 2019-11-13
    • 2023-03-19
    • 2021-12-03
    • 2015-02-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多