MFC通过ADO使用SQL语句向SQL数据库插入数据的有关问题

MFC通过ADO使用SQL语句向SQL数据库插入数据的问题
  //连接数据库
theApp.OnInitADOConn();//连接sql
   
bstr_t bstrSQL="insert 仪器汇总表 values('AAA,'BBB,'01','22')";//插入SQL数据
//创建记录集指针对象实例
(theApp.m_pRecordset).CreateInstance(_uuidof(Recordset));
//打开记录集
theApp.m_pRecordset->Open(bstrSQL,(theApp.m_pConnection).GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);

AfxMessageBox("2222");
theApp.ExitConnect();//断开SQL连接
AfxMessageBox("3333");

运行后发现,MFC程序报错退出,通过AfxMessageBox弹窗发现错误处在theApp.ExitConnect()但是这里为什么会报错??????

void CXXXApp::OnInitADOConn()
{
  try
   {
      //创建连接对象实例
   m_pConnection.CreateInstance("ADODB.Connection");
   //设置连接字符串
   CString strConnect="Provider=SQLOLEDB.1;Persist Security Info=False;User ID=yang;Password=yangjinze;Initial Catalog=物品刷卡借用系统数据库;Data Source=PC-201107091723";

       //使用Open方法连接数据库
   m_pConnection->Open((_bstr_t)strConnect,"","",adModeUnknown);
   }
catch(_com_error e)
{
    AfxMessageBox("数据库连接失败!");
}
}
//ADO对象函数,用来关闭连接数据库
void CXXXApp::ExitConnect()
{
    //关闭记录集和连接
if(m_pRecordset!=NULL)
m_pRecordset->Close();
m_pConnection->Close();
}
------解决方案--------------------
代码中看不出问题
------解决方案--------------------
执行insert语句不需要接收记录集,只有用select语句的才需要。
------解决方案--------------------
用Execute来执行会方便些。