我用ADO来访问ORACLE,已经成功打开与数据库的连接(如下),但不知道怎么用SQL语句来操作,请高手帮忙!(最好贴出代码)
_ConnectionPtr pConn("ADODB.Connection");
_RecordsetPtr  pRst("ADODB.Recordset");
pConn->Open("Provider=MSDAORA.1;Password=manager;User ID=system;Data Source=yhs;Persist Security Info=True","","",adConnectUnspecified);

解决方案 »

  1.   

    其实很简单,我给个插入语句的例子给你看
     CString strCmd;
    _ConnectionPtr m_pConnection;
    strCmd.Format("insert into DemoTable(Name,Age) values ('%s',%d)",m_Name,atol(m_Age));
     m_pConnection->Execute((LPCSTR)strCmd,&RecordsAffected,adCmdText);OK?
    Execute方法的原型如下所示:
    _RecordsetPtr Connection15::Execute ( _bstr_t CommandText, VARIANT * RecordsAffected, long Options ) 其中CommandText是命令字串,通常是SQL命令。参数RecordsAffected是操作完成后所影响的行数, 参数Options表示CommandText中内容的类型,Options可以取如下值之一:
    adCmdText:表明CommandText是文本命令
    adCmdTable:表明CommandText是一个表名
    adCmdProc:表明CommandText是一个存储过程
    adCmdUnknown:未知
      

  2.   

    Execute ( _bstr_t CommandText, VARIANT * RecordsAffected, long Options ) 函数
    中的RecordsAffected的含义能介绍一下吗?
      

  3.   

    _variant_t RecordsAffected;
    具体如何用,你自己查一下MSDN 吧。我很难说清楚
      

  4.   

    读取表中的值到VC的一个变量中 代码片断
    // 连接对记录集对象
    _RecordsetPtr m_pRs; CString strName;
    CString strPassWord;
    CString LinkStr;

    LinkStr.Format("SELECT * FROM 管理用户表 where 管理用户ID='%s'",strName);
    m_pRs.CreateInstance("ADODB.Recordset"); //准备数据库记录集接口
    try  
    {
    m_pRs->Open("Provider=MSDAORA.1;Password=manager;User  ID=system;Data Source=yhs;Persist Security  Info=True","","",adConnectUnspecified);
    }
    catch(_com_error *e)
    {
    ::MessageBox(0,_T(e->ErrorMessage()),_T("严重错误!"),MB_OK );
    } try
    {
    if(VARIANT_FALSE == m_pRs->EndOfFile)
    {
    _variant_t vPassWordDB;
    CString strTemp; vPassWordDB=m_pRs->GetCollect("管理用户密码"); 
    strTemp = (char*)_bstr_t(vPassWordDB);
    vPassWordDB.Clear();
    if(strTemp!=strPassWord)
    return false;
    else
    return true;
    }
    return false;
    }
    catch(_com_error *e)
    {
    ::MessageBox(0,_T(e->ErrorMessage()),_T("严重错误!"),MB_OK );
    }
      

  5.   

    使用SQL API更直接,且简单