我在mysql里写了一个存储过程,在mysql里调用时正确的,但是我现在想用C语言调用这个存储过程。代码如下。
#include
#include
#include
#include
//#include "winsock2.h"
void main()
{
MYSQL my_connection;
MYSQL_RES *res_ptr;
//MYSQL_RES *res;
MYSQL_ROW sqlrow;
mysql_init(&my_connection);
if(mysql_real_connect(&my_connection, "localhost", "root","0","abccs", 0, NULL, 0))
{
printf("Connection success\n");
if(mysql_query(&my_connection, "call sp(12)"))
{
printf("select error: %s\n", mysql_error(&my_connection));
}
else
{
res_ptr = mysql_store_result(&my_connection);
if(res_ptr)
{
printf("Retrieved %lu rows\n", (unsigned long)mysql_num_rows (res_ptr));
while (sqlrow = mysql_fetch_row(res_ptr))//每次输出每一行
{
unsigned int field_count;
field_count =0;
while(field_count < mysql_field_count(&my_connection))//列
{
printf("%s ", sqlrow[field_count]);field_count++;
}
printf("\n");//换行
}
if(mysql_errno(&my_con