gpt4 book ai didi

c++ - mysql 结果集为空?

转载 作者:行者123 更新时间:2023-11-28 00:26:07 24 4
gpt4 key购买 nike

编辑

后续问题:mysql resultset is always null

--

resultset 似乎是空的,我确信该表存在,没有抛出 SQLException。它应该打印计数,但实际上没有。

C 数据库 header

class CDatabase
{
bool verify(string, string);
public:
sql::Connection *con;
CDatabase();
~CDatabase();
};

CDatabase::CDatabase

con = driver->connect("", "", "");
con->setSchema("");

CDatabase::验证

bool CDatabase::verify(string channel, string hyper_key)
{
if (!con) return false;
try
{
sql::Statement *stmt;
sql::ResultSet *res;
stmt = con->createStatement();
stmt->execute("SELECT COUNT(*) FROM dark_souls2_widgets");
res = stmt->getResultSet();
cout << res->rowsCount();
delete stmt;
delete res;
}
catch (sql::SQLException &e) {
cout << "# ERR: SQLException in " << __FILE__;
cout << "(" << __FUNCTION__ << ") on line »" << __LINE__ << endl;
cout << "# ERR: " << e.what();
cout << " (MySQL error code: " << e.getErrorCode();
cout << ", SQLState: " << e.getSQLState() << " )" << endl;
return false;
}
return false;
}

最佳答案

它不应该显示计数,它应该显示 1,因为这个查询要么失败,要么结果只有一行。如果您想知道表 dark_souls2_widgets 中存在多少行,那么您可以使用

res = stmt->getResultSet();

while (res->next()) {
cout << res->getInt(1); // getInt(1) returns the first column
}

关于c++ - mysql 结果集为空?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24975838/

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