⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dboperater.cpp

📁 VC代码,ADO的SQL server数据库连接,查询基本功能示范
💻 CPP
字号:
#include "stdafx.h"
#include "DbOperater.h"
#include "DBConnection.h"

extern _ConnectionPtr pADOConn;//ADO连接类
extern long retADOConn;//ADO连接返回

extern char strServer[];
extern char strUID[];
extern char strPWD[];
extern char strDBname[];

extern 	SQLRETURN ODBCDbInitialHenv();
extern  void ODBCDbFreeHenv();

SQLHDBC hdbc;

//函数InitDb初始化ADO连接
long InitDb()
{
//	::CoInitialize(NULL);
	//Added by LuoMin 2006/10/27
	//初始化全局使用的ODBC环境句柄
	SQLRETURN Tempretcode;
	Tempretcode = ODBCDbInitialHenv();
	if(Tempretcode != SQL_SUCCESS && Tempretcode != SQL_SUCCESS_WITH_INFO)
	{
		AfxMessageBox("初始化全局环境句柄出错!");
		return 1;
	}


	Tempretcode = ODBCDbInitialHdbc(&hdbc);
	if(!(Tempretcode == SQL_SUCCESS || Tempretcode == SQL_SUCCESS_WITH_INFO) )
	{
		AfxMessageBox("获得数据库语句句柄出错!");
		return 1;
	}

	//初始化ADO连接
	//并将其返回值保存在全局变量retADOConn中
	HRESULT hr;
	hr = pADOConn.CreateInstance(__uuidof(Connection));
	if(!SUCCEEDED(hr))
	{
		AfxMessageBox("Error!");
	}

	TCHAR AdoConnStr[128];
	memset(AdoConnStr,0,128);
	wsprintf (AdoConnStr, _T("PROVIDER=SQLOLEDB;SERVER=%s;DATABASE=%s;UID=%s;PWD=%s"),strServer,strDBname,strUID,strPWD);
	_bstr_t	bstrADOConn=AdoConnStr;
	retADOConn=pADOConn->Open(bstrADOConn,"","",-1);	
	if(retADOConn < 0 )
	{
		return 1;
	}
	return 0;
}	

//函数FreeDb释放ADO连接
void FreeDb()
{			
	ODBCDbFreeDb(&hdbc);
	ODBCDbFreeHenv();

	if(pADOConn->State == 1)
	{
		pADOConn->Close();

	}
	if(pADOConn)
	{
		pADOConn = NULL;
	}

//	::CoUninitialize();

}
	

⌨️ 快捷键说明

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