?? rddatabase.cpp
字號(hào):
// RdDatabase.cpp: implementation of the CRdDatabase class.
//
//////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include "RdDatabase.h"
#include <direct.h>
#include <stdlib.h>
#include <stdio.h>
#include <direct.h>
#include <io.h>
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
CRdDatabase::CRdDatabase()
{
m_sDB = _T("OT");
m_sIP = _T("127.0.0.1");
m_sPASSWORD = _T("");
m_sPORT = _T("3306");
m_sRESULT = _T("");
m_sSQL = _T("");
m_sUSER = _T("root");
sTableName = _T("");
InitMYSQL();
if(!EistDB("OT")){
// AfxMessageBox("here");
CreateDB("OT");
}
if(Open())
m_bOpen = TRUE;
else
m_bOpen = FALSE;
}
CRdDatabase::~CRdDatabase()
{
//Close();
}
BOOL CRdDatabase::Open()
{
if ( mysql_select_db( myData, "OT" ) < 0 ){
mysql_close( myData ) ;
m_bOpen = FALSE;
return FALSE;
}
m_bOpen = TRUE;
return TRUE;
}
///////////////////////////////////////////////////
// 關(guān)閉數(shù)據(jù)庫(kù)
///////////////////////////////////////////////////
BOOL CRdDatabase::Close()
{
mysql_close( myData ) ;
m_bOpen = FALSE;
return TRUE;
}
void CRdDatabase::SetDB(CString sDB)
{
m_sDB = sDB;
}
void CRdDatabase::SetPort(CString sPort)
{
m_sPORT = sPort ;
}
void CRdDatabase::SetIP(CString sIP)
{
m_sIP = sIP;
}
void CRdDatabase::SetUser(CString sUser)
{
m_sUSER = sUser ;
}
void CRdDatabase::SetPassword(CString sPass)
{
m_sPASSWORD = sPass ;
}
void CRdDatabase::SetSql(CString sSql)
{
m_sSQL = sSql ;
}
BOOL CRdDatabase::InitMYSQL()
{
if((myData=mysql_init((MYSQL*)0))&&
mysql_real_connect( myData, m_sIP, m_sUSER, m_sPASSWORD, m_sDB, atoi(m_sPORT), NULL, 0 ) )
{
return TRUE;
}
return FALSE;
}
BOOL CRdDatabase::IsOpen()
{
return m_bOpen;
}
CCustResultSet CRdDatabase::Exculte()
{
MYSQL_RES * res ;
if ( !mysql_query(myData,m_sSQL ) ){
res = mysql_store_result( myData ) ;
theResult.SetRes(res);
}
return theResult;
}
BOOL CRdDatabase::EistDB(CString sDB)
{
char envvar[] = "PATH";
char buffer[_MAX_PATH];
/* Get the current working directory: */
if( _getcwd( buffer, _MAX_PATH ) == NULL )
perror( "_getcwd error" );
/* Search for file in PATH environment variable: */
long handle=_chdir( DB);
if(handle ==0 ){
_chdir(buffer);
return TRUE;
}
else
return FALSE;
}
BOOL CRdDatabase::ExistTable(CString sTable)
{
char pathbuffer[_MAX_PATH];
char envvar[] = "PATH";
sTable = "c:\\mysql\\data\\OT\\"+sTable+".frm";
/* Search for file in PATH environment variable: */
_searchenv( sTable, envvar, pathbuffer );
if(*pathbuffer != '\0')
return TRUE;
else
return FALSE;
}
void CRdDatabase::CreateDB(CString sDB)
{
if( _mkdir( DB ) != 0 )
AfxMessageBox("數(shù)據(jù)庫(kù)不能建立!");
else
InitMYSQL();
}
void CRdDatabase::CreateTable(CString sTable)
{
if ( mysql_query(myData,sTable) ){
AfxMessageBox(" Can't Create the Table " );
}
}
void CRdDatabase::Insert(CString str)
{
if ( !mysql_query(myData,str ) ){
return ;
}
}
BOOL CRdDatabase::ExistDB()
{
return EistDB("RT");
}
BOOL CRdDatabase::Del(CString sql)
{
if ( !mysql_query(myData,sql ) ){
return TRUE;
}
return FALSE;
}
BOOL CRdDatabase::Update(CString sql)
{
if ( !mysql_query(myData,sql ) ){
return TRUE;
}
return FALSE;
}
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -