vc++ 中使用 mysql 数据库
2012-05-25 10:21:30 来源:WEB开发网核心提示:VC6.0 与VS2005 中设置1、找來MySQL(Win32)安裝目录下的include文件夾, 將其添加到VC头文件目录列表中;(VC6 -> Options -> Directories -> 加入此目录)(VC2005 -> 工具 -> 选项 -> 项目和解決方案 ->
VC6.0 与VS2005 中设置
1、找來MySQL(Win32)安裝目录下的include文件夾, 將其添加到VC头文件目录列表中;
(VC6 -> Options -> Directories -> 加入此目录)
(VC2005 -> 工具 -> 选项 -> 项目和解決方案 -> VC++目录 -> 显示以下内容的目录 -> 包含文件 -> 加入此目录)
2、找到MySQL(Win32)安裝目录下的lib文件夹, 將其添加到VC库文件目录列表中;
(VC6 -> Options -> Directories -> 加入此目录)
(VC2005 -> 工具 -> 选项 -> 项目和解决方案 -> VC++目录 -> 显示以下内容的目录 -> 库文件 -> 加入此目录,注意是lib/debug或lib/opt)
代码中设置 (.h文件)
#include <winsock2.h>
#include <mysql.h>
#pragma comment(lib,"libmySQL.lib")
.cpp部分代码
BOOL COperatorMySql::InitConnectMySql() { //初始化mysql mysql_init (&mysql); //获取设置参数 GetSettingParameter(); //连接mysql if(!mysql_real_connect(&mysql,m_strHost,m_strUser,m_strPassword,m_strDB,m_Port,NULL,0)) { //mydb为你所创建的数据库,3306为端口号,可自行设定 AfxMessageBox("数据库连接失败"); b_ConnectState = FALSE; return FALSE; } else { b_ConnectState = TRUE; mysql_query(&mysql,"set names 'gbk'"); return TRUE; } }
void COperatorMySql::CloseConnectMySql() { mysql_close(&mysql); }
BOOL COperatorMySql::InsertRecordMySql(const char* strTableName, const char* strFieldList ,const char* strValue) { if (strlen(strTableName)==0||strlen(strFieldList)==0||strlen(strValue)==0) { return FALSE; } char strSql[2048] = "insert into "; strcat(strSql,strTableName); strcat(strSql,"( "); strcat(strSql,strFieldList); strcat(strSql," ) values("); strcat(strSql,strValue); strcat(strSql," )"); if(mysql_real_query(&mysql,strSql,strlen(strSql))!=0) { //重新连接 if ( FALSE == InitConnectMySql()) { return FALSE; } else { //重新操作 if (mysql_real_query(&mysql,strSql,strlen(strSql))!=0) { return FALSE; } else { return TRUE; } } } else { return TRUE; } }
设置远程连接
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'pass123' WITH GRANT OPTION
授权用户:myuser
密码:pass123
权限:ALL
更多精彩
赞助商链接