gpt4 book ai didi

c++ - MySQL C++ 连接器 MySQL_Prepared_Statement::getUpdateCount 错误

转载 作者:搜寻专家 更新时间:2023-10-31 01:16:23 24 4
gpt4 key购买 nike

我使用的是 MySQL C++ 连接器版本 1.1.0。这是我的代码的样子:

PreparedStatement *pStatement;
connection->setAutoCommit(false);

pStatement = connection->prepareStatement("UPDATE records "
"SET is_processed = ? "
"WHERE id = ?");

//LOOP BEGIN
pStatement->setInt(1, is_processed);
pStatement->setString(2, record_id);

pStatement->execute();
//LOOP END

int updated_records;

try
{
updated_records = pStatement->getUpdateCount();
}
catch(SQLException&e)
{
cout << "ERROR: " << e.what();
cout << " (MySQL error code: " << e.getErrorCode();
cout << ", SQLState: " << e.getSQLState() << ")" << endl;
}

connection->commit();
connection->setAutoCommit(true);

抛出异常,输出如下:

ERROR: MySQL_Prepared_Statement::getUpdateCount (MySQL error code: 0, SQLState: )

所以它什么也没说。 getUpdateCount() 函数有什么问题?有什么方法可以获得更详细的错误报告级别?

编辑

有没有其他方法可以使用 mysql c++ 连接器获取更新的行数?

最佳答案

我也遇到了这个问题。我最终查看了源代码。看来来源明确会抛出异常。

uint64_t
MySQL_Prepared_Statement::getUpdateCount()
{
checkClosed();
throw MethodNotImplementedException("MySQL_Prepared_Statement::getUpdateCount");
return 0; // fool compilers
}

关于c++ - MySQL C++ 连接器 MySQL_Prepared_Statement::getUpdateCount 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9113848/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com