zoukankan      html  css  js  c++  java
  • c++ 连接mysql数据库

    首先安装mysql,点完全安装,才能在在安装目录include找到相应的头文件,注意,是完全安装。

    我装的是5.1版本,需要的头文件有

    把需要的文件添加进去,然后再把 libmysql.lib放到项目目录里,文件在mysql安装目录 lib 下面.

    #include "stdafx.h"
    #include <iostream>
    #include <winsock2.h>
    #include "mysql.h"
    //#pragma comment(lib, "ws2_32.lib")
    #pragma comment(lib,"libmysql.lib")
    using namespace std;
    int main(int argc, char* argv[])
    {
    
    	mysql_library_init(NULL,0,0);	
    	MYSQL mysql;
    	mysql_init(&mysql);
    
    	if(0==mysql_options(&mysql,MYSQL_SET_CHARSET_NAME,"utf8"))//设置字符集
    	{
    		cout << "设置字符集成功\n\n" <<endl;
    	}
    
    	if(!mysql_real_connect(&mysql,"localhost","root","kwgkwg","test",0,NULL,CLIENT_MULTI_STATEMENTS))//连接数据库
    	{
    		cout << "not connect mysql" << endl;
    	}else
    	{
    		cout << "welcome to mysql\n\n\n";
    	}
    
    	mysql_query(&mysql,"select * from demo1");			//执行SQL语句
    	MYSQL_RES *result=mysql_store_result(&mysql);		//获取资源
    	int rowcount=mysql_num_rows(result);				//获取记录数
    	unsigned int fieldcount=mysql_num_fields(result);	//获取字段数
    
    	//cout << rowcount << endl;
    
    	MYSQL_FIELD *field=NULL;							//字段
    	MYSQL_ROW row=NULL;							//记录
    	while(row=mysql_fetch_row(result))
    	{
    		for(unsigned int i=0;i<fieldcount;i++)
    		{
    			field=mysql_fetch_field_direct(result,i);
    			cout<<field->name<<":"<<row[i] <<"\n";
    		}
    	}	
    
    
    	mysql_free_result(result);
    	mysql_close(&mysql);
    	mysql_server_end();
    	mysql_library_end();
    	
    	return 0;
    }
    

      

  • 相关阅读:
    资源
    p/invoke碎片,对结构体的处理
    p/invoke碎片--对数组的封送处理
    p/invoke碎片--对类的封送处理
    CSS--background
    在Main方法中设置异常的最后一次捕捉
    记一次WinForm中屏蔽空格键对按钮的作用
    记一次WinForm程序中主进程打开子进程并传递参数的操作过程(进程间传递参数)
    知识点
    安卓N特性
  • 原文地址:https://www.cnblogs.com/solq/p/2140010.html
Copyright © 2011-2022 走看看