+ -
当前位置:首页 → 问答吧 → 使用Mysql C API 的预处理语句时出错

使用Mysql C API 的预处理语句时出错

时间:2011-12-20

来源:互联网

系统:Windows 7 pro;数据库版本:mysql 5.5.18.

使用Mysql C API编写了如下的函数:

int Func(void)
{
  MYSQL mysqlObj;
  MYSQL_STMT *stmt;
  char *sqlSyntax = "insert into my_table(id, name) values(?,?)";


  mysql_real_connect(&mysqlObj, "localhost", "root", "1234", "my_db", 0, NULL, 0);
  stmt = mysql_stmt_init(&mysqlObj);

  mysql_stmt_prepare(stmt, sqlSyntax, (unsigned long)strlen(sqlSyntax));
   
...
}

调试程序发现:连接数据库等语句执行是正常的,但是当执行到mysql_stmt_prepare()这句时, 函数报了一个错误:

Commands out of sync; you can't run this command now。请高手给与帮助,谢谢。

作者: davidkob   发布时间: 2011-12-20

你没给mysqlObj初始化啊。。。

作者: liuyich123   发布时间: 2011-12-23