MFC连接MySQL7.9数据库程序教程
2015-12-16 13:38
225 查看
MFC连接数据库常用的方法有三种:1.ODBC2.MFC数据库类3.DAO数据库本文采用第二种方法(据说第三种方法最简单,管他呢,MFC数据库类已经很白痴了)第一步:配置DSN,方法如下:http://download.csdn.net/detail/feilongzaitianhehe/9360493安装Mysql ODBC driver,下载路径http://download.csdn.net/detail/feilongzaitianhehe/9360669第二步:新建一个MFC应用程序,然后随便弄个鼠标响应事件或者菜单响应事件什么的。添加如下代码:
try{CDatabase db;if( db.Open(NULL,FALSE,FALSE,"ODBC;DSN=mysql5.3 Unicode-user;UID=root;PWD=abcdef")){db.ExecuteSql("insertinto UserMaster values( 'TestID' , 'Test User Name' , 0)");db.Close();}}catch (CDBException* e){AfxMessageBox( e->m_strError);e->Delete();}<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);"> </span>具体的SQL语句根据你的字段不同而不同啦,然后去数据库看一下数据插入了没有,如果插入了,恭喜你,MFC连接数据库最头疼的部分搞定了,接下来的事情就是查一下MFC类库,进行响应操作而已,很easy。第三步:查询数据 其实有了上面那几行代码进行增删改都没有问题了,下面讲解一下查询数据。MFC提供了一个CRecordset对象,(用以代表一个表,我是这么理解的,事实也是这样的),我们可以通过类向导新建一个代表一张表的CRecordset类。方法如下:
try{CRecordsetrs(&db);rs.Open(CRecordset::forwardOnly,_T("SELECT * FROM vendors"));CDBVariantvarValue;shortnFields=rs.GetODBCFieldCount();intdatatype=0;for(shortindex=0; index<nFields; index++){rs.GetFieldValue(index,varValue);datatype=varValue.m_dwType;if(index==0){Id_Str.Format(L"%ld",varValue.m_lVal);}elseif(index==1){if(datatype==0)Name_Str="";elseName_Str=*varValue.m_pstring;}elseif(index==2){if(datatype==0)Address_Str="";elseAddress_Str=*varValue.m_pstring;}elseif(index==3){if(datatype==0)City_Str="";elseCity_Str=*varValue.m_pstring;}elseif(index==4){if(datatype==0)State_Str="";elseState_Str=*varValue.m_pstring;}elseif(index==5){if(datatype==0)Zip_Str="";elseZip_Str=*varValue.m_pstring;}elseif(index==6){if(datatype==0)Country_Str="";elseCountry_Str=*varValue.m_pstring;}}UpdateData(FALSE);rs.Close();AfxMessageBox(L"QuaryOne Row Success!");}catch(CDBException*Err){AfxMessageBox(Err->m_strError);Err->Delete();}
相关文章推荐
- MySQL中的integer 数据类型
- MySQL存储过程
- Android之获取手机上的图片和视频缩略图thumbnails
- mysql中int、bigint、smallint 和 tinyint的区别与长度
- mysql load data 导出、导入 csv
- source命令执行SQL脚本文件
- MySQL创建用户及权限控制
- MySQL管理数据表
- linux下mysql添加用户
- mysql procedure
- mysql触发器
- 数据库链接字符串查询网站
- MySQL 备份和恢复策略
- mac下安装mysql(转载)
- mysql 修改编码 Linux/Mac/Unix/通用(杜绝修改后无法启动的情况!)
- MySQL数据的导出、导入(mysql内部命令:mysqldump、mysql)
- mysql数据行转列
- Linux下修改MySQL编码的方法