📄 mysqldatabase.cpp
字号:
// MySQLDatabase.cpp: implementation of the CMySQLDatabase class.
//
//////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include "mysql.h"
#include "MySQLDatabase.h"
#pragma comment(lib,"libmySQL.lib")
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
CMySQLDatabase::CMySQLDatabase()
{
m_hMySQL=0;
memset(&m_MYSQLConnInfo,0,sizeof(m_MYSQLConnInfo));
}
CMySQLDatabase::~CMySQLDatabase()
{
Close();
}
BOOL CMySQLDatabase::SetCurrentDatabase(
const char* pszDatabase
)
{
if(!m_hMySQL)
{
return FALSE;
}
if(mysql_select_db(&m_MYSQLConnInfo,pszDatabase)>=0)
{
return FALSE;
};
return TRUE;
}
BOOL CMySQLDatabase::Open(
const char* pszServer,
const char* pszUser,
const char* pszPwd,
const char* pszDB,
const DWORD dwPort
)
{
if(!m_hMySQL)
{
if(!mysql_init(&m_MYSQLConnInfo))
{
return FALSE;
};
}
if(0==mysql_real_connect(&m_MYSQLConnInfo,pszServer,
pszUser,pszPwd,pszDB,dwPort,0,0))
{
m_hMySQL=0;
return FALSE;
}
m_hMySQL=&m_MYSQLConnInfo;
return TRUE;
}
void CMySQLDatabase::Close()
{
if(m_hMySQL)
{
mysql_close(&m_MYSQLConnInfo);
m_hMySQL=0;
}
}
BOOL CMySQLDatabase::IsOpen()
{
return 0!=m_hMySQL;
}
void CMySQLDatabase::GetDatabaseName(std::string& strDatabase)
{
if(m_hMySQL)
{
strDatabase=m_MYSQLConnInfo.db;
}
else
{
strDatabase="";
}
}
BOOL CMySQLDatabase::ExecuteSQL(LPCSTR lpszSQL)
{
if(!m_hMySQL)
{
return FALSE;
}
return 0==mysql_query(&m_MYSQLConnInfo,lpszSQL);
}
const char* CMySQLDatabase::GetErrorInfo()
{
return mysql_error(&m_MYSQLConnInfo);
}
DWORD CMySQLDatabase::GetAffectedRows()
{
return m_MYSQLConnInfo.affected_rows;
}
const char* CMySQLDatabase::GetInfoMsg()
{
return m_MYSQLConnInfo.info;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -