*请问一个关于ADO执行数据库的有关问题*

***********************请教一个关于ADO执行数据库的问题***********************
CDBExec::CDBExec(void)
{
::CoInitialize(NULL);
}

CDBExec::~CDBExec(void)
{
std::vector <PDB_CONN> ::iterator   iter   =   m_vtDBConn.begin();
while(iter   !=   m_vtDBConn.end())
{
(*iter)-> conn-> Close();
delete   (*iter);
}

m_vtDBConn.clear();

m_Command.Release();
m_ParameterReturn.Release();


::CoUninitialize();
}


/*=========================================================================================*/
//   函数名称:InitializeConn
//   简要描述:将数据打包
//
//   参数描述
//   无参数
//
//   返回值:
//   @类型:   BOOL
//   [true]   所有数据库连接初始化成功
//   [false]非所有数据库连接初始化成功
/*=========================================================================================*/
BOOL   CDBExec::InitializeConn()
{
char   szPath[256];
::GetCurrentDirectory(256   ,   szPath);
strcat(szPath   ,   "\\db.ini ");

        CStdioFile   file;
CFileException   fileExp;
CString   sDBName;

file.Open(szPath   ,   CFile::modeRead   ,   &fileExp);
        CString   sConnStr;

while(file.ReadString(sDBName))
{
                PDB_CONN   pConn   =   new   DB_CONN();
pConn-> sDBName   =   sDBName;
pConn-> conn.CreateInstance(__uuidof(Connection));
pConn-> conn-> ConnectionTimeout   =   5;
sConnStr.Format( "Provider=SQLOLEDB;Data   Source=localhost;Initialize   Catalog=%s;Trusted_Connection=yes; "   ,   sDBName);
try
{
pConn-> conn-> Open(sConnStr.AllocSysString()   ,   " ",   " "   ,   adModeUnknown);
}
catch(_com_error   e)
{
std::vector <PDB_CONN> ::iterator   iter;
while(iter   !=   m_vtDBConn.end())
{
(*iter)-> conn-> Close();
delete   (*iter);
}

m_vtDBConn.clear();
::CoUninitialize();

return   FALSE;
}

m_vtDBConn.push_back(pConn);
}

file.Close();

m_Command.CreateInstance(__uuidof(Command));

m_ParameterReturn.CreateInstance(__uuidof(Parameter));
m_ParameterReturn-> Name   =   "@return ";
m_ParameterReturn-> Type   =   adInteger;
m_ParameterReturn-> Size   =   4;
m_ParameterReturn-> Direction   =   adParamReturnValue;
m_ParameterReturn-> Value   =   (_variant_t)1;

m_Record.CreateInstance(__uuidof(Recordset));


return   TRUE;
}


/*=========================================================================================*/
//   函数名称:GetConn
//   简要描述:根据数据库名取数据库连接
//
//   参数描述
//   @参数类型   CString                 @参数名   sDBName                     @参数描述   数据库名
//
//   返回值:
//   @类型:   PDB_CONN
//   数据库连接对应的结构体
/*=========================================================================================*/
PDB_CONN   CDBExec::GetConn(CString   sDBName)
{
std::vector <PDB_CONN> ::iterator   iter   =   m_vtDBConn.begin();