最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

vc 怎样连接mysql数据库

来源:动视网 责编:小采 时间:2020-11-08 22:13:23
文档

vc 怎样连接mysql数据库

vc 怎样连接mysql数据库:vc连接mysql数据库的方法:首先打开VC6;然后在中间列表框中添加本地安装MySQL的include目录路径;接着选中Library files并添加MySQL的Lib目录路径;最后进行编程测试即可。推荐:《mysql视频教程》一、MySQL的安装Mysql的安装去官网下载就可以
推荐度:
导读vc 怎样连接mysql数据库:vc连接mysql数据库的方法:首先打开VC6;然后在中间列表框中添加本地安装MySQL的include目录路径;接着选中Library files并添加MySQL的Lib目录路径;最后进行编程测试即可。推荐:《mysql视频教程》一、MySQL的安装Mysql的安装去官网下载就可以


推荐:《mysql视频教程》

一、MySQL的安装

Mysql的安装去官网下载就可以。。最新的是5.7版本。

二、VC6.0的设置

(1)打开VC6.中选0 工具栏Tools菜单下的Options选项,在Directories的标签页中右边的“Show directories for:”下拉列表中“Includefiles”,然后在中间列表框中添加你本地安装MySQL的include目录路径。如图:

(2)在上面说到的“Show directories for:”下拉列表中选中“Library files”,然后添加你本地安装MySQL的Lib目录路径。如图:

**这里要说明一下:细心的人会发现我的这个目录和上一个图中的不一样,这是因为这个错误:libmysql.lib : fatal error LNK1113: invalid machine 无效的服务器

这是因为vc开发的是32位的程序,而mysql数据库是位导致的,你用32位的程序去操作位的数据库肯定会出错,我在下一篇博文中将详细说明怎么解决。

(3)在“Project settings->Link:Object/library modules”里面添加“libmysql.lib”。

(5)建议将“libmySQL.lib、libmySQL.dll”拷到你所建的工程的目录下。

这两个文件在D:\Mysql\lib目录下。

三、编程实现

1. 一个简单的小程序,看看是否能连接成功。。

#include <stdio.h>
#include <windows.h>
#include <mysql.h> 

int main()
{

 MYSQL mysql;
 mysql_init(&mysql); //初始化mysql结构

 if(!mysql_real_connect(&mysql,"localhost","myuser","123456","student_db",3306,NULL,0))
 printf("\n连接数据库时发生错误!\n");
 else
 printf("\n连接数据库成功!\n");

 mysql_close(&mysql); //释放数据库
 
 return 0;
}

mysql_real_connect(&mysql,"localhost","myuser","123456","student_db",3306,NULL,0)//myuser是我的用户名,“123456”是密码,“student_db”是数据库,3306是端口号

2.实现查询小程序

// test.cpp : Defines the entry point for the console application.
//
#include <stdio.h>
#include <windows.h>
#include "StdAfx.h"

#include <winsock.h> 
#include <iostream> 
#include <string> 
#include <mysql.h> 
using namespace std; 
//不需要单步调试的就注释掉 
//#define STEPBYSTEP 
 
void pause(){ 
 
 #ifdef STEPBYSTEP 
 system("pause"); 
 #endif 
} 
void writeToFile(const char *s) 
{ 
 
 FILE *fp=fopen("info.txt","rw"); 
 fprintf(fp,s); 
 fclose(fp); 
 
} 
 /* int main()

{

 MYSQL mysql;
 mysql_init(&mysql); //初始化mysql结构

 if(!mysql_real_connect(&mysql,"localhost","myuser","123456","student_db",3306,NULL,0))
 printf("\n连接数据库时发生错误!\n");
 else
 printf("\n连接数据库成功!\n");

 mysql_close(&mysql); //释放数据库
 
 return 0;
}*/
int main(int argc, char* argv[]){ 
 
 cout<<"start...."<<endl; 
 pause(); 
 MYSQL mysql; 
 if(0==mysql_library_init(0,NULL,NULL)) 
 { 
 cout<<"mysql_library_init succeed"<<endl; 
 
 }else{ 
 cout<<"mysql_library_init failed"<<endl; 
 return -1; 
 } 
 pause(); 
 if(NULL!=mysql_init(&mysql)) 
 { 
 
 cout<<"mysql_init succeed"<<endl; 
 }else{ 
 cout<<"mysql_init failed"<<endl; 
 return -1; 
 } 
 pause(); 
 if(0==mysql_options(&mysql,MYSQL_SET_CHARSET_NAME,"gb2312")) 
 { 
 
 cout<<"mysql_option succeed"<<endl; 
 }else{ 
 cout<<"mysql_option failed"<<endl; 
 return -1; 
 } 
 pause(); 
 
 if(NULL!=mysql_real_connect(&mysql,"localhost","myuser","123456","student_db",3306,NULL,0)) 
 { 
 
 cout<<"mysql_real_connect succeed"<<endl; 
 }else{ 
 cout<<"mysql_real_connect failed"<<endl; 
 return -1; 
 } 
 pause(); 
 string sql; 
 
 sql="select * from sgroup"; 
 MYSQL_RES *result=NULL; 
 if(0==mysql_query(&mysql,sql.c_str())) 
 { 
 
 cout<<"mysql_query select succeed"<<endl; 
 result=mysql_store_result(&mysql); 
 int rowcount=mysql_num_rows(result); 
 cout<<"row count:"<<rowcount<<endl; 
 unsigned int fieldcount=mysql_num_fields(result); 
 MYSQL_FIELD *field=NULL; 
 for(unsigned int i=0;i<fieldcount;i++) 
 { 
 
 field=mysql_fetch_field_direct(result,i); 
 cout<<field->name<<"\t\t"; 
 } 
 cout<<endl; 
 MYSQL_ROW row=NULL; 
 row=mysql_fetch_row(result); 
 while(NULL!=row) 
 { 
 
 for(int i=0;i<fieldcount;i++){ 
 
 cout<<row[i]<<"\t\t"; 
 
 } 
 cout<<endl; 
 row=mysql_fetch_row(result); 
 
 } 
 }else{ 
 
 cout<<"mysql_query select data failed"<<endl; 
 mysql_close(&mysql); 
 return -1; 
 } 
 pause(); 
 /*sql="drop table user_info"; 
 if(0==mysql_query(&mysql,sql.c_str())) 
 { 
 
 cout<<"mysql_query drop table succeed"<<endl; 
 }else{ 
 cout<<"mysql_query drop table failed"<<endl; 
 mysql_close(&mysql); 
 return -1; 
 
 } */
 mysql_free_result(result); 
 mysql_close(&mysql); 
 mysql_server_end(); 
 
 
 system("pause"); 
 return 0; 
}

  运行结果:

至此连接成功。哈哈。

文档

vc 怎样连接mysql数据库

vc 怎样连接mysql数据库:vc连接mysql数据库的方法:首先打开VC6;然后在中间列表框中添加本地安装MySQL的include目录路径;接着选中Library files并添加MySQL的Lib目录路径;最后进行编程测试即可。推荐:《mysql视频教程》一、MySQL的安装Mysql的安装去官网下载就可以
推荐度:
标签: 连接 数据库 vc
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top