sprintf_s(query, "update point set p%d=%d where hakbun='%d';", no, point, hakbun);
に照会するためのコマンド。DB(MYSQL)は、データベース内のデータは文章の理由のために出力されていないC++
何が問題ですか?
void updatePoint(MYSQL *con) {
MYSQL * connection = NULL, conn;
MYSQL_RES * sql_result;
MYSQL_ROW sql_row;
int hakbun, field, j, query_stat, no, point;
char query[1024];
cout << "student id > ";
cin >> hakbun;
cout << " ┌────────────────────────────┐" << endl;
cout << " └────────────────────────────┘" << endl;
cout << " num > ";
cin >> no;
cout << " point > ";
cin >> point;
sprintf_s(query, "update point set p%d='%d' where hakbun='%d';", no, point, hakbun);
sprintf_s(query, "select * from point where hakbun = '%d';", hakbun);
cout << sizeof(query) << endl;
query_stat = mysql_query(connection, query);
sql_result = mysql_store_result(connection);
while ((sql_row = mysql_fetch_row(sql_result)) != NULL) {
void table();
printf(" %s\t %s %s %s %s %s\t%s\t%s\t %s\t%s\t%s\n", sql_row[0], sql_row[1], sql_row[2], sql_row[3], sql_row[4], sql_row[5], sql_row[6], sql_row[7], sql_row[8], sql_row[9], sql_row[10]);
}
mysql_free_result(sql_result);
}
「UPDATE」クエリは結果を返しません。データベースからデータをフェッチするには、 'SELECT'を使う必要があります。 – Barmar
@Barmarしかし、あなたは 'SELECT'で情報を更新できませんか? –
そうです。 2つのクエリを実行する必要があります。最初に更新してから、テーブルの内容を取得することを選択します。 – Barmar