db.cpp

来自「深入浅出Visual C++入门进阶与应用实例 随书光盘 作者 何志丹」· C++ 代码 · 共 68 行

CPP
68
字号
// MyRecordset.cpp: implementation of the CMyRecordset class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "db.h"

#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
CDatabase * CDB::m_pDatabase  = NULL ;
CString     CDB::m_strDsn ="CommunityMDBBySpider";
CString		CDB::m_strUser;
CString		CDB::m_strPWD ;

CDB::CDB()
{
	
}

CDB::~CDB()
{

}


CDatabase * CDB::GetDefaultDB()
{
	return m_pDatabase ;
}

int  CDB::OpenDB()
{
	//分配内存
	if(NULL == m_pDatabase )
	{
		m_pDatabase = new CDatabase ;
		if(NULL == m_pDatabase )
			return -1 ;
	}

	ASSERT(!m_pDatabase->IsOpen());//重复打开,报一下异常

	CString strConnect ;
	strConnect.Format("DSN=%s;UID=%s;PWD=%s",m_strDsn,m_strUser,m_strPWD);
	if(!m_pDatabase->OpenEx(strConnect))
		return - 2 ;	

	return 0 ;//分配内存,打开数据库成攻
}

bool  CDB::CloseDB()
{
	ASSERT(m_pDatabase->IsOpen());//没有打开,却关闭,报一个异常

	m_pDatabase->Close();//关闭失败,也得删除内存

	if(NULL != m_pDatabase)
		delete m_pDatabase ;

	return true ;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?