关于连接sql数据库的问题?
以下这段连接sql数据库的代码我总感觉很庞大,
如何用个函数封装起来,只留一个或两个参数接口?
void CSqlserverDlg::OnButton1() { CoInitialize(NULL);//初始化COM库 _ConnectionPtr pConn(__uuidof(Connection));//实例化一个connection对象pConn _RecordsetPtr pRst(__uuidof(Recordset)); //实例化一个Recordset对象pRst[/color] //连接字符串说明:Provider表示驱动引擎;User ID表示用户名;Password表示口令;Initial Catalog表示数据库名 pConn->ConnectionString="Provider=SQLOLEDB.1;Persist Security Info=False;" "User ID=sa;Initial Catalog=xx;Password=;Data Source=(local)"; pConn->Open("","","",adConnectUnspecified); pRst->Close(); pConn->Close(); pRst.Release(); pConn.Release(); CoUninitialize();//释放COM库} class CAdo{private: _ConnectionPtr public: CAdo(){CoInitialize(NULL); _ConnectionPtr pConn(__uuidof(Connection)); _RecordsetPtr pRst(__uuidof(Recordset)) } ~CAdo(){ //验证后进行关闭 pRst->Close(); pConn->Close(); pRst.Release(); pConn.Release(); CoUninitialize(); }public: //operator BOOL ConnToDB(TCHAR *pProvider,TCHAR *pUserID,TCHAR *pDBname,TCHAR *pPWD,TCHAR *pDBSource) { BOOL b_Retn = TRUE; try { pConn->ConnectionString="Provider=SQLOLEDB.1;Persist Security Info=False;" "User ID=sa;Initial Catalog=xx;Password=;Data Source=(local)"; pConn->Open("","","",adConnectUnspecified); .......... }catch ( ...) { } return b_Retn; }}