1

1つのアプリを開発するためにVisualStudio 12を使用しています。そのアプリでは、いくつかの mySql 呼び出しを行う必要があります。そのコードがあります。

sql::Statement *stmt = db->global->createStatement();
sql::ResultSet *res = stmt->executeQuery("SELECT * FROM `tbl_jobs` WHERE name = 'maintenance';");
Server->maintenance = (res->getString("data") == "on")? true : false;

クエリは問題ありません。Navicat では問題なく動作しますが、次の場合:

res->getString("data")

そのエラーをスローすることはありません:

... で未処理の例外: Microsoft C++ 例外: メモリ位置での sql::InvalidArgumentException ....

sql::SQlException throw を実行すると、次のログが取得されます。

ERROR: SQLException in .... Function: main on line 33 ERROR: MySQL_ResultSet::getString: can't fetch because not on result set (MySql error code: 1544116026, SqlState: MySQL_ResultSet::getString: can't fetch because not結果セットで)

私は sql::ResultSet にデータがないことを理解していますが、res->rowsCount() を印刷すると、私は 1 行だと言います... res->first() を試しましたが、ランダムなエラーがスローされます。

何か案は?:c

4

2 に答える 2