现在的位置: 首页 > 综合 > 正文

windows 链接mysql

2013年09月02日 ⁄ 综合 ⁄ 共 1184字 ⁄ 字号 评论关闭
int main(int argc, char* argv[])
{
	const char *host = "localhost";//主机
	const char *user = "root";//用户名
	const char *passwd = "12321 ";//密码
	const char *db = "mydb";//数据库名
	unsigned int port = 3306;//mysql端口
	const char *unix_socket = 0;
	unsigned long client_flag = 0;

	MYSQL mysql;
	MYSQL_RES *result;
	MYSQL_FIELD *field;
    MYSQL_ROW sql_row;

	string temp_time = GetNewTime(3);
	string sql_select = "select kid,keyword_hash,keyword,record_time from words_realtime where record_time < '"+temp_time+"'";

	mysql_library_init(0,NULL,NULL);//初始化MYSQL C API
	mysql_init(&mysql);
	mysql_options(&mysql,MYSQL_SET_CHARSET_NAME,"GBK");
	if(mysql_real_connect(&mysql,host,user,passwd,db,port,unix_socket,client_flag)){
		cout<<"database connection OK!"<<endl<<endl;	
		int res = mysql_query(&mysql,sql_select.c_str());
		if(!res){//mysql_query执行成功返回0
			cout<<"Query success!"<<endl<<endl;
			result = mysql_store_result(&mysql);
			if(result){
				int i,j;
                cout<<"number of result: "<<(unsigned long)mysql_num_rows(result)<<endl<<endl;

				for(i=0;field=mysql_fetch_field(result);i++)//获取列名
				{
					cout<<field->name<<"	";
				}

				cout<<endl;
				
				while(sql_row = mysql_fetch_row(result)){
					for(i=0;i<mysql_num_fields(result);i++)
                    {
                        cout<<sql_row[i]<<"	";
                    }
                    cout<<endl;
				}
			}
		}
		else{
			cout<<mysql_error(&mysql)<<endl;
		}
	}
	mysql_close(&mysql);
	system("pause");
	return 0;
}

抱歉!评论已关闭.