69,373
社区成员
发帖
与我相关
我的任务
分享
MYSQL* mysql_insert = new MYSQL;
//初始化数据库
mysql_init(mysql_insert);
if(mysql_insert==NULL)
{
return;
}
//连接数据库
mysql_insert = mysql_real_connect(mysql_insert, m_data.m_IP, m_data.m_UserName, m_data.m_PassWord, NULL, m_data.m_Port, NULL, 0);
if(!mysql_insert) return;
//选择数据库表
if(mysql_select_db(mysql_insert, m_data.m_DBName) != 0) return;
int nCountLrcOld = GlobalData.size();
char sql[100] = {0};
sprintf(sql, "select id, title, artist, lrc from %s where id > %d order by id", m_data.m_DBName, uMaxLrcDataID);
int len =strlen(sql);
//设置mysql编码
mysql_query(mysql_insert,"SET NAMES utf8");
Global_wRunlog.writeFile("ready to query");
if(mysql_real_query(mysql_insert, sql, len)!=0) //执行查询sql语句,在此会出错并且程序崩溃
{
Global_wRunlog.writeFile("last error %s", mysql_error(mysql_insert)); //执行不到
return ;
}
MYSQL_RES *result = NULL;
MYSQL_ROW row;
Global_wRunlog.writeFile("ready to getdata");
//读取查询到的信息
if(!(result=mysql_store_result(mysql_insert))) //上面没崩溃,这里也可能崩溃
{
return ;
}
while(row = mysql_fetch_row(result))
{
//做将数据插入到内存的map表中
}
//释放记录
mysql_free_result(result);
mysql_close(mysql_insert);
delete mysql_insert;
mysql_insert = NULL;
mysql_store_result(mysql_insert)
#include <stdio.h>
#include <stdlib.h>
#ifdef WIN32
#include <winsock2.h>
#ifndef WIN32_LEAN_AND_MEAN
#define WIN32_LEAN_AND_MEAN
#endif
#include <windows.h>
#include <process.h>
#else
#include <unistd.h>
#include <string.h>
#endif
#include "mysql5/mysql.h"
#pragma comment(lib, "libmysql.lib")
int main(void)
{
MYSQL* mysql_insert = NULL;
MYSQL_RES *result = NULL;
MYSQL_ROW row;
char sql[100] = {0};
int len = 0;
mysql_insert = mysql_init((MYSQL*)NULL);
//初始化数据库
//mysql_init(mysql_insert);
if(mysql_insert==NULL)
{
return -1;
}
//连接数据库
mysql_insert = mysql_real_connect(mysql_insert, "192.168.1.63", "user", "pwd", NULL, 3306, NULL, 0);
if(!mysql_insert) return -1;
//选择数据库表
if(mysql_select_db(mysql_insert, "db") != 0) return -1;
sprintf(sql, "select id, title, artist, lrc from %s where id > %d order by id", "user", 100);
len =strlen(sql);
//设置mysql编码
mysql_query(mysql_insert,"SET NAMES utf8");
printf("ready to query\n");
if(mysql_real_query(mysql_insert, sql, len)!=0) //执行查询sql语句,在此会出错并且程序崩溃
{
printf("last error %s\n", mysql_error(mysql_insert)); //执行不到
return -1;
}
printf("ready to getdata\n");
//读取查询到的信息
if(!(result=mysql_store_result(mysql_insert))) //上面没崩溃,这里也可能崩溃
{
return -1;
}
while(row = mysql_fetch_row(result))
{
//做将数据插入到内存的map表中
}
//释放记录
mysql_free_result(result);
mysql_close(mysql_insert);
mysql_insert = NULL;
return (0);
}
mysql_insert = mysql_init((MYSQL*)NULL);
//初始化数据库
//mysql_init(mysql_insert);
MYSQL* mysql_insert = new MYSQL;
//初始化数据库
mysql_init(mysql_insert);
if(mysql_insert==NULL)
{
return;
}
//连接数据库
mysql_insert = mysql_real_connect(mysql_insert, m_data.m_IP, m_data.m_UserName, m_data.m_PassWord, NULL, m_data.m_Port, NULL, 0);
if(!mysql_insert) return;
//选择数据库表
if(mysql_select_db(mysql_insert, m_data.m_DBName) != 0) return;
int nCountLrcOld = GlobalData.size();
char sql[100] = {0};
sprintf(sql, "select id, title, artist, lrc from %s where id > %d order by id", m_data.m_DBName, uMaxLrcDataID);
int len =strlen(sql);
//设置mysql编码
mysql_query(mysql_insert,"SET NAMES utf8");
Global_wRunlog.writeFile("ready to query");
if(mysql_real_query(mysql_insert, sql, len)!=0) //执行查询sql语句,在此会出错并且程序崩溃
{
Global_wRunlog.writeFile("last error %s", mysql_error(mysql_insert)); //执行不到
return ;
}
MYSQL_RES *result = NULL;
MYSQL_ROW row;
Global_wRunlog.writeFile("ready to getdata");
//读取查询到的信息
if(!(result=mysql_store_result(mysql_insert))) //上面没崩溃,这里也可能崩溃
{
return ;
}
while(row = mysql_fetch_row(result))
{
//做将数据插入到内存的map表中
}
//释放记录
mysql_free_result(result);
mysql_close(mysql_insert);
delete mysql_insert;
mysql_insert = NULL;