在C ++中使用libmysql的简单准备语句中的MySQL语法错误

时间:2018-10-30 16:06:29

标签: c++ mysql libmysql

我正在尝试使用准备好的语句,无论查询如何,它总是在插入时返回语法错误:“您的SQL语法有错误;请查看与您的MySQL服务器版本相对应的手册以获取正确的语法在第1行的“ I”附近使用”

...

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

0 个答案:

没有答案