帮我解释下这段连接数据库和显示数据的代码 越详细越好 谢谢
_ConnectionPtr con;
_RecordsetPtr record;
_variant_t affected;
con.CreateInstance(__uuidof(Connection));
record.CreateInstance(__uuidof(Recordset));
con->Open("provider=SQLOLEDB;server=127.0.0.1;database=Xk","sa","123",0);
record->CursorLocation = adUseClient;
record->Open(_bstr_t("select * from Class"),_variant_t((IDispatch*)con,true),adOpenStatic,adLockOptimistic,adCmdText);
m_dataGrid.SetRefDataSource(record);

解决方案 »

  1.   

        _ConnectionPtr con; //声明Connection对象
        _RecordsetPtr record; //声明RecordSet对象
        _variant_t affected; //声明VARIANT对象
        con.CreateInstance(__uuidof(Connection)); //初始化Connection对象
        record.CreateInstance(__uuidof(Recordset));//初始化RecordSet对象
        con->Open("provider=SQLOLEDB;server=127.0.0.1;database=Xk","sa","123",0);//连接数据库
        record->CursorLocation = adUseClient; //设置RecordSet对象参数
        record->Open(_bstr_t("select * from Class"),_variant_t((IDispatch*)con,true),adOpenStatic,adLockOptimistic,adCmdText);//执行SQL语句 并把记录集返回给RecordSet对象
        m_dataGrid.SetRefDataSource(record);//控件根据记录集 进行赋值。。
      

  2.   

    //顶1s
    //record->CursorLocation = adUseClient; //设置RecordSet对象参数 
    //设置数据库游标为本地游标。