读书人

通过ADO操作ORACLE数据库有关问题

发布时间: 2012-01-26 19:40:46 作者: rapoo

通过ADO操作ORACLE数据库问题
1、不能通过AddNew来向数据库中添加数据,一添加数据就出现抛出异常。
2、不能通过打开Recordset来查询BLOB类型的数据
_ConnectionPtr pConn;
_RecordsetPtr pRs;

HRESULT hr;
int nID;
byte *pPhoto;
TRY
{
hr = pConn.CreateInstance(__uuidof(Connection));
if (FALIED(hr))
{
return;
}

hr = pRs.CreateInstance(__uuidof(Recordset));
if (FAILED(hr))
{
pConn.Release();
return;
}

pConn-> Open( "Provider=MSDAORA;Data Source=CAS;USER Id=ORACLECY;Password=123; ", " ", " ",adModeUnkown);


pRs-> Open( "SELECT ID,NAME,PHOTO FROM CAS.USERINFO ",_variant((IDispath *)pConn,true),adOpenDynamic,adLockOptimistic,adCmdText);

pRes-> AddNew();
pRs-> Fields-> GetItem( "ID ")-> value = nID; //这里就抛出异常
.....



不知道为什么?

[解决办法]
pRs-> Fields-> GetItem( "ID ")-> value = (long)nID; //这里就抛出异常

[解决办法]
请使用 PutValue :
pRs-> Fields-> GetItem( "ID ")-> PutValue(_bstr_t(nID));

读书人网 >VC/MFC

热点推荐