Я пытаюсь использовать подготовленные операторы, и независимо от запроса, он всегда возвращает синтаксическую ошибку при вставке: «У вас есть ошибка в вашем синтаксисе SQL; проверьте руководство, соответствующее вашей версии сервера MySQL, для правильного синтаксиса, чтобы использовать рядом «Я» в строке 1 «
...
query = "INSERT INTO my_table (blob_field) VALUES(?)";
//query = "SELECT 1"; // This simple query also fails.
MYSQL_STMT *stmt = mysql_stmt_init(conn);
if (mysql_stmt_prepare(stmt, query, strlen(query) != 0))
{
last_error = mysql_error(conn);
return EXIT_FAILURE;
}
...
Версия libmysql.lib / dll — 5.5.36. Согласно их веб-сайту, версия поддерживает это. Состояние mysql_stmt_init возвращает MYSQL_STMT_INIT_DONE (1), который кажется нормальным, но завершается ошибкой в mysql_stmt_prepare.
Я пробовал несколько примеров, в том числе на их сайте здесь: https://dev.mysql.com/doc/refman/5.5/en/c-api-prepared-statement-date-handling.html
Задача ещё не решена.
Других решений пока нет …