用c连接mysql数据库出现段错误为什么

eastpig0703 2007-09-21 03:33:38
void main()
{
MYSQL mysql;
MYSQL_RES *mysql_result;
MYSQL_ROW mysql_row; /* Row data */
int f1, f2, num_row, num_col;
mysql_init(&mysql);
if(!mysql_real_connect(&mysql,NULL,"root","nrsagroup","nrsa",0,NULL,0))
{
printf("Failed to connect to database : Error: %s\n",
mysql_error(&mysql));
return;
}
if(mysql_query(&mysql, "create table huhe(eventid int not null,eventname text)"))
{
(void) printf("Create table fails: Error: %s\n",mysql_error(&mysql));
}
if(mysql_query(&mysql, "insert into huhe(eventid,eventname) values (1,'go to lunch')"))
{
(void) printf("Insert fails: Error: %s\n",mysql_error(&mysql));

}
if(mysql_query(&mysql, "insert into huhe(eventid,eventname) values (2,'go to supper')"))
{
(void) printf("Insert fails: Error: %s\n",mysql_error(&mysql));

}
if (mysql_query(&mysql, "select * from huhe") == 0)
{
mysql_result = mysql_store_result(&mysql);;
num_row = mysql_num_rows(mysql_result); /* Get the no. of row */
num_col = mysql_num_fields(mysql_result); /* Get the no. of column */
for (f1 = 0; f1 < num_row; f1++)
{
for (f2 = 0; f2 < num_col; f2++)
{
mysql_row = mysql_fetch_row(mysql_result); /* Fetch one by one */
printf("[Row %d, Col %d] ==> [%s]\n", f1, f2, mysql_row[f2]);
}
}
}
else
{
(void) printf("Query fails: Error: %s\n",mysql_error(&mysql));
}
mysql_free_result(mysql_result);
mysql_close(&mysql);
}


运行结果显示
[Row 0, Col 0] ==> [1]
[Row 0, Col 1] ==> [go to lunch]
[Row 2, Col 0] ==> [2]
段错误
...全文
221 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
hifrog 2007-09-21
  • 打赏
  • 举报
回复
gdb一下,在出现段错误的时候where一下。

23,121

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧