Когда я запускаю свой код для обновления записи MYSQL этим кодом, он работает:
const char *update_query = "UPDATE `Time_Action_Settings` SET time= DATE_ADD(NOW(), INTERVAL 10 MINUTE) WHERE attribute='next_run'";
, когда я пытаюсь передать переменную в C с помощью snprintf, код запускается, я получаю сообщение об ошибке:У вас есть ошибка в вашем синтаксисе SQL;проверьте руководство, соответствующее вашей версии сервера MariaDB, на предмет правильного синтаксиса для использования рядом с "% d) МИНУТОМ) WHERE attribute = 'next_run'" в строке 1
const char *update_query = "UPDATE `Time_Action_Settings` SET time= DATE_ADD(NOW(), INTERVAL %d MINUTE) WHERE attribute='next_run'";
if (mysql_query(conn, update_query) != 0)
{
fprintf(stderr, "%s\n", mysql_error(conn));
exit(1);
} else {
if (snprintf(buffer, sizeof(buffer), update_query, variable) >= sizeof(buffer))
{
printf("Issue with Buffer \n");
exit (-1);
}
}