Mysql Connector C ++无缓冲的ResultSet C ++ [英] Mysql Connector C++ Unbuffered ResultSet C++

查看:143
本文介绍了Mysql Connector C ++无缓冲的ResultSet C ++的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个可容纳大数据的表. 我想获取所有数据并一一处理.

I have a table that holds large data. I want to fetch all the data and process them one by one.

根据此处的文档: https://dev.mysql.com/doc/connector-cpp/zh-CN/connector-cpp-examples-results.html

用于(简单)语句的结果集的API相同 和准备好的陈述.如果查询返回一个结果集,请使用 sql :: Statement :: executeQuery()或 sql :: PreparedStatement :: executeQuery()运行查询.两种方法 返回sql :: ResultSet对象.默认情况下,Connector/C ++缓冲所有 客户端上的结果集以支持游标.

The API for fetching result sets is identical for (simple) statements and prepared statements. If your query returns one result set, use sql::Statement::executeQuery() or sql::PreparedStatement::executeQuery() to run your query. Both methods return sql::ResultSet objects. By default, Connector/C++ buffers all result sets on the client to support cursors.

它表示默认情况下会在客户端上缓冲所有结果集. 如何禁用它?

It says by default it buffers all results sets on the client. How can I disable that?

推荐答案

在语句中,您可以定义结果集的类型.使用TYPE_FORWARD_ONLY会导致未缓冲的结果集,如

At the statement, you can define the type of the result set. Using TYPE_FORWARD_ONLY leads to unbuffered result sets as defined in mysql release notes:

...实现了getResultSetType()和setResultSetType()的实现 陈述.使用TYPE_FORWARD_ONLY,这表示未缓冲的结果集 和TYPE_SCROLL_INSENSITIVE,表示缓冲的结果集.

... Implemented getResultSetType() and setResultSetType() for Statement. Uses TYPE_FORWARD_ONLY, which means unbuffered result set and TYPE_SCROLL_INSENSITIVE, which means buffered result set.

希望有帮助.

这篇关于Mysql Connector C ++无缓冲的ResultSet C ++的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆