在linux下使用c api调用mysql_query(&conn, "call sp_del_user(@kind)")时出现“Connect failed: Lost connection to MySQL server during query”;
原因:
存储过程低效率;
服务器负载出现问题。
针对存储过程进行排查,发现把存储过程中的select kind去掉就可以了。
在存储过程中添加select kind,是为了让mysql_query执行存储过程时产生结果集,然后通过result获取结果;
在去掉select kind后,原本的步骤分成两步:
mysql_query(&conn, "call sp_del_user(@kind);"); // 执行存储过程
mysql_query(&conn, "select @kind“); // 获取存储过程的输出参数
阅读(2001) | 评论(0) | 转发(0) |