vc+ado+oledb+Oracle 为什么记录集无法更新?(100分,在线等.....)
连接语句如下:
g_pconn.CreateInstance("ADODB.Connection");
CString connStr;
connStr = "Provider=MSDAORA;Data Source=mytest;User ID=system; Password=manager; ";
// connStr = "Provider=OraOLEDB.Oracle.1;Password=manager;Persist Security Info=True;User ID=system;Data Source=mytest;";
g_pconn->Open(_bstr_t(connStr),"","",adModeUnknown);
记录集打开用下面的代码:
m_rs->Open((_variant_t)sql,_variant_t((IDispatch *)g_pConn,true),adOpenStatic,adLockOptimistic,adCmdText);
然后用下面的语句更新:
m_rs->PutCollect(_variant_t("x"),_variant_t(m_x));
m_rs->PutCollect(_variant_t("y"),_variant_t(m_y));
m_rs->Update();
为什么提示:
"当前纪录不支持更新。这可能是提供程序的限制,也可能是选定锁的限制。"
可是看上面的代码,似乎也不是它所说的两种错误啊?
问题点数:100、回复次数:2Top
1 楼laiyiling(陌生人[MVP])回复于 2005-02-25 16:39:52 得分 100
在打开数据库前,添加如下语句试一下
pRecordSet->CursorLocation = adUseClient;Top
2 楼smallInt(小整形)回复于 2005-02-25 16:56:16 得分 0
谢谢, laiyiling(陌生人)
搞定了!!!Top




