VC60连接MySQL大数据库.docx
- 文档编号:28098645
- 上传时间:2023-07-08
- 格式:DOCX
- 页数:13
- 大小:498.91KB
VC60连接MySQL大数据库.docx
《VC60连接MySQL大数据库.docx》由会员分享,可在线阅读,更多相关《VC60连接MySQL大数据库.docx(13页珍藏版)》请在冰豆网上搜索。
VC60连接MySQL大数据库
电力学院
嵌入式系统应用安全
课程论文
题目:
VC6.0连接MySQL数据库
姓名:
学号:
201132
班级:
2011班
院系:
计算机科学与技术学院
专业年级:
信息安全2011级
2014年6月8日
通过VC开发MySQL数据库应用软件有多种方式:
一、通过MyODBC界面
二、通过Connector/C++l界面
三、通过MySQLCAPI界面
四、第三方封装的MySQL类
在经过反复比较,我还是选择了MySQLCAPI方式来进行MySQL的开发。
在VC中使用MySQL的步骤如下:
1、MYSQL的准备工作
1.下载MySQL的服务器/客户端安装包
我的开发环境是Windows,所以我下载的是MySQLforWindowsmysql-5.6.19-win32
2.安装MySQL服务器/客户端包
Cmd下进入mysql-5.6.19-win32安装目录,我的安装目录是D:
\mysql-5.6.19-win32\bin
界面输入安装语句sqld-unstall。
成功安装MYSQL
3.运行MYSQL,建立测试数据库及表
4.查看建立的表格
2、VC设置准备
打开vc++6.0,TOOLS->OPTIONS->DIRECTORIES,在其Includefiles添加MySQL的include路径。
切换下拉框,选择Libraryfiles,添加MySQL的lib路径。
PROJECTS-->SETINGS-->LINK在OBJECT/LIBARYMODULES添加libmysql.lib
将MYSQL安装目录中的几个文件复制到VC工程文件夹中
MySQL数据库安装之后在\MySQL\lib\opt目录下
libmysql.lib
libmysql.dll
同时需要\MySQL\include目录下的几个文件:
mysql_version.h
my_list.h
mysql_.h
mysql_time.h
mysql.h
my_alloc.h
typelib.h
在VC的安装目录MicrosoftVisualStudio\VC98\Lib下找到:
WS2_32.LIB
3、VC编程,建立工程WIN32CONSOLEAPPLICATION
代码
#include
#include
#include
#include
#include
#include
#pragmacomment(lib,"libmysql.lib")//连接MysQL需要的库
usingnamespacestd;
intmain()
{
constcharuser[]="root";//username
constcharpswd[]="";//password
constcharhost[]="127.0.0.1";//or"127.0.0.1"
constchartable[]="testdb";//database
unsignedintport=3306;//serverport
MYSQLmyCont;
MYSQL_RES*result;
MYSQL_ROWsql_row;
MYSQL_FIELD*fd;
charcolumn[32][32];
intres;
mysql_init(&myCont);
if(mysql_real_connect(&myCont,host,user,pswd,table,port,NULL,0))
{
cout<<"connectsucceed!
"< mysql_query(&myCont,"SETNAMESGBK");//设置编码格式,否则在cmd下无法显示中文 res=mysql_query(&myCont,"select*fromname_table");//查询 if(! res) { result=mysql_store_result(&myCont);//保存查询到的数据到result if(result) { inti,j; cout<<"numberofresult: "<<(unsignedlong)mysql_num_rows(result)< for(i=0;fd=mysql_fetch_field(result);i++)//获取列名 { strcpy(column[i],fd->name); } j=mysql_num_fields(result); for(i=0;i { printf("%s\t",column[i]); } printf("\n"); while(sql_row=mysql_fetch_row(result))//获取具体的数据 { for(i=0;i { printf("%s\n",sql_row[i]); } printf("\n"); } } } else { cout<<"querysqlfailed! "< } } else { cout<<"connectfailed! "< } if(result! =NULL)mysql_free_result(result);//释放结果资源 mysql_close(&myCont);//断开连接 return0; } 结果 4、心得 通过网络资料自学使用MYSQL连接vc的方法。 亲手测试后学到很多。 使用VC连接数据库的方法还有很多。 在今后的学习中会继续接触。 这次的学习对今后的大作业、毕业设计有很大的益处。 附录: MySQL提供了很多函数来对数据库进行操作,大致可以分为以下几类: 第一部分控制类函数 mysql_init()初始化MySQL对象 mysql_options()设置连接选项 mysql_real_connect()连接到MySQL数据库 mysql_real_escape_string()将查询串合法化 mysql_query()发出一个以空字符结束的查询串 mysql_real_query()发出一个查询串 mysql_store_result()一次性传送结果 mysql_use_result()逐行传送结果 mysql_free_result()释放结果集 mysql_change_user()改变用户 mysql_select_db()改变默认数据库 mysql_debug()送出调试信息 mysql_dump_debug_info()转储调试信息 mysql_ping()测试数据库是否处于活动状态 mysql_shutdown()请求数据库SHUTDOWN mysql_close()关闭数据库连接 第二部分信息获取类函数 mysql_character_set_name()获取默认字符集 mysql_get_client_info()获取客户端信息 mysql_host_info()获取主机信息 mysql_get_proto_info()获取协议信息 mysql_get_server_info()获取服务器信息 mysql_info()获取部分查询语句的附加信息 mysql_stat()获取数据库状态 mysql_list_dbs()获取数据库列表 mysql_list_tables()获取数据表列表 mysql_list_fields()获取字段列表 第三部分行列类操作函数 mysql_field_count()获取字段数 mysql_affected_rows()获取受影响的行数 mysql_insert_id()获取AUTO_INCREMENT列的ID值 mysql_num_fields()获取结果集中的字段数 mysql_field_tell()获取当前字段位置 mysql_field_seek()定位字段 mysql_fetch_field()获取当前字段 mysql_fetch_field_direct()获取指定字段 mysql_frtch_fields()获取所有字段的数组 mysql_num_rows()获取行数 mysql_fetch_lengths()获取行长度 mysql_row_tell()获取当前行位置 mysql_row_seek()行定位 mysql_data_seek()行定位 mysql_fetch_row()获取当前行 第四部分线程类操作函数 mysql_list_processes()返回所有线程列表 mysql_thread_id()获取当前线程ID mysql_thread_safe()是否支持线程方式 mysql_kill()杀列一个线程 第五部分出错处理类函数 mysql_errno()获取错误号 mysql_error()获取错误信息 第六部分已过时的函数 mysql_connect() mysql_create_db() mysql_drop_db() mysql_eof() mysql_reload() mysql_escape_string()
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VC60 连接 MySQL 数据库