该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
unsigned int __stdcall scan(PVOID pM)
{
char ip[20];
strcpy(ip, (char*)pM);
MYSQL mysql;
MYSQL_RES* result;
//初始化mysql句柄
mysql_init(&mysql);
//连接mysql数据库
if(!mysql_real_connect(&mysql,"localhost","root","123456","mysql",3306,NULL,0))
{
printf(mysql_error(&mysql));
printf("\nCannot access to the database!!!\n");
exit(-1);
}
//插入数据
char query1[100];
char query2[100];
sprintf(query1,"select * from testip where ip = '%s' ",ip);
if(mysql_query(&mysql,query1)) //执行插入语句
{
//出错
result=mysql_store_result(&mysql);
mysql_free_result(result); //释放查询结果,如果不释放,下次调用mysql_query()会失败
}
else
{
//0,语句成功执行
result = mysql_store_result(&mysql);
if(mysql_num_rows(result))
{
//1,表中已有数据
mysql_free_result(result);
printf("%s 已有数据,无需插入! \n",ip);
}
else
{
//0,表中无此数据,需插入
mysql_free_result(result);
sprintf(query2,"INSERT INTO testip values ('%s') ",ip);
if(mysql_query(&mysql,query2)!=0)
{
printf("%s insert data error\n",ip);
}
else
{
printf("%s insert data success\n",ip);
}
}
}
}