adoconn.cpp

来自「库存管理,有MSHflexgrid的使用和网络数据库存储」· C++ 代码 · 共 83 行

CPP
83
字号
// ADOconn.cpp: implementation of the ADOconn class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"  
#include "query.h"
#include "ADOconn.h"
  
#ifdef _DEBUG 
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

ADOconn::ADOconn()
{

}

ADOconn::~ADOconn()
{

}

void ADOconn::OnInitADOconn()
{
	::CoInitialize(NULL);
	try
	{
		m_pconnection.CreateInstance("ADODB.Connection");
		//_bstr_t strConnect="driver={SQL Server}; Server=SG-34-229-WJIAN; Database=home_data;uid=sa;pwd=68385932;";
		_bstr_t strConnect="driver={SQL Server}; Server=9A8CFB07134F49F; Database=home_data;";//uid=s;PWD=s;";
		m_pconnection->Open(strConnect,"","",adModeUnknown);	
	}
	catch(_com_error e)
	{
		AfxMessageBox(e.Description());
	}
}

_RecordsetPtr& ADOconn::GetRecordSet(_bstr_t bstrSQL)
{
	try
	{
	if(m_pconnection==NULL)  OnInitADOconn ();
	m_pRecordset.CreateInstance(__uuidof(Recordset));
	m_pRecordset->Open(bstrSQL,m_pconnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);
	}
	catch(_com_error e)
	{
		AfxMessageBox(e.Description());
	}

	return m_pRecordset;
}

BOOL ADOconn::ExecuteSQL(_bstr_t bstrSQL)
{
	try
	{
	if(m_pconnection==NULL)  OnInitADOconn ();
	m_pconnection->Execute(bstrSQL,NULL,adCmdText);
	return true;
	}
	catch(_com_error e)
	{
		AfxMessageBox(e.Description());
		return false;
	}
}

void ADOconn::ExitConnect()
{
	if (m_pRecordset!=NULL) m_pRecordset->Close();

	m_pconnection->Close();
	::CoUninitialize();
}

⌨️ 快捷键说明

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