回 帖 发 新 帖 刷新版面

主题:SQL2000问题求教!!!!!!!!!!!!

为何我用VC的ADO访问数据库,都可以查询了,但一添加记录就有致命错误,我打开数据库是设置的
pApp->m_pRecordset->Open("select * from Home1",
        pApp->m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);
按理说应该可以添加删除!!!!!!请高手指教

回复列表 (共6个回复)

沙发

提示是什么样的错误?
http://www.programfan.com/blog/article.asp?id=15520
这是ado链接access数据库的,里面有添加、删除,你参考一下。

板凳


其他环节都没问题,一调用记录集对象的AddNew()方法时就出错误提示,提示就是你的程序出了错误;但是我查询就没问题,真搞不明白,我本来用的是SQL2000,现在换成了Access数据库,结果还是一样,晕了

3 楼

我测试时,经过Updata()方法时,就是在更新时,居然提示和Kernel32.dll
有关系,搞不明白了

4 楼

没有遇到过这样的错误。

5 楼

CoInitialize(NULL);

_ConnectionPtr  pConn(__uuidof(Connection));  //连接子串指针
     _RecordsetPtr pRst(__uuidof(Recordset));//创建记录集对象

     pConn->ConnectionString="Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=Home";
pConn->Open("","","",adConnectUnspecified);//以同步方式打开数据库

pRst->Open("select * from Home1",_variant_t((IDispatch*)pConn),
        adOpenDynamic,adLockOptimistic,adCmdText);

  CString str="san";
    pRst->AddNew();
    //pRst->PutCollect("姓名",_variant_t(str));
    pRst->Update();
    pRst->Close();
    pConn->Close();
    pRst.Release();
    pConn.Release();
    
    CoUninitialize();//用完COM后释放


这是我专门写的测试程序,请高手帮我看下到底那里有错误,我实在是看不出来
还是查询绝对没问题,但是一添加记录就出问题

6 楼

解决了一些问题,但是现在又出新问题了,我用Access测试成功,但是用sql2000就不行,请问是不是数据库权限问题,但是我修改了表的权限,还是没用,请高手指点

我来回复

您尚未登录,请登录后再回复。点此登录或注册