MFC与MySQL联合开发类应用(mfcmysql类)

  MFC和MySQL是构建企业级应用必备的技术,MFC是微软发布的集合图形和文本的应用程序的开发框架,MySQL是开源的跨平台的关系型数据库管理系统。在做一个完整的企业级应用时,需要应用到MFC和MySQL的联合开发技术。

  在Windows下,我们可以利用MFC让应用程序更加美观地介绍给用户,使用MFC可以从多方面让视图更加优美更强大,只要我们编写好响应函数就可以对用户操作进行处理,例如按钮点击事件,滚动条操作等。如果要实现真正的企业级应用,则还需要加入关系型数据库,而MySQL则恰好满足了这方面的需求,它的优势有很多:①SQL语言的标准;②免费开放源代码,跨平台;③支持存储过程;④易于系统优化,性能良好;⑤安全可信。

  当前MFC和MySQL结合开发数据应用,我们可以使用两者之间的扩展技术,如利用ODBC技术让MFC和MySQL连接,XML技术等,下面的代码就是使用ODBC技术把MFC和MySQL连接起来的例子:

“`C++

#include

#include

#include

#include

#include

//定义相关数据库变量

SQLHENV hEnv; //环境句柄

SQLHDBC hDbc; //连接句柄

SQLHSTMT hStmt; //语句句柄

SQLRETURN retcode;//语句执行返回结果

//提供连接字符串

lpszConnectStr=”DRIVER={MySQL ODBC 5.1 Driver};SERVER=localhost;”

“DATABASE=mfc;UID=mfc;PWD=mfc;”;

//设置连接句柄

retcode = SQLAllocHandle(SQL_HANDLE_ENV, NULL, &hEnv);

retcode = SQLSetEnvAttr(hEnv, SQL_ATTR_ODBC_VERSION, (void*)SQL_OV_ODBC3, 0);

retcode = SQLAllocHandle(SQL_HANDLE_DBC, hEnv, &hDbc);

//建立连接

retcode = SQLDriverConnect(hDbc, NULL,

(SQLCHAR*)lpszConnectStr,

SQL_NTS,

NULL, 0, NULL, SQL_DRIVER_NOPROMPT );

//创建语言句柄

retcode = SQLAllocHandle(SQL_HANDLE_STMT, hDbc, &hStmt);

//关闭MySQL连接,释放资源

retcode = SQLFreeHandle(SQL_HANDLE_STMT, hStmt);

SQLDisconnect(hDbc);

SQLFreeHandle(SQL_HANDLE_DBC, hDbc);

SQLFreeHandle(SQL_HANDLE_ENV, hEnv);

free(lpszConnectStr);


  从上面的代码可以看出,联合MFC和MySQL开发的MFC程序中,需要先进行设置环境句柄、连接句柄,然后利用DriverConnect函数把程序和MySQL数据库连接,就可以实现MFC程序对数据库资源的访问。

  借助MFC和MySQL的联合开发技术,我们就可以实现一个完整的企业级的运用,使得应用程序更加贴近用户,而且数据管理更加安全可信,在企业级应用中,MFC和MySQL的运用几乎是必不可少的。

数据运维技术 » MFC与MySQL联合开发类应用(mfcmysql类)