我的程序如下想往oracle里存图片.
char *pBuf = m_pBMPBuffer;
VARIANT varBLOB;
SAFEARRAY *psa;
SAFEARRAYBOUND rgsabound[1];
if(pBuf)
{
rgsabound[0].lLbound = 0;
rgsabound[0].cElements = m_nFileLen;
psa = SafeArrayCreate(VT_UI1, 1, rgsabound);
for (long i = 0; i < (long)m_nFileLen; i++)
SafeArrayPutElement (psa, &i, pBuf++); varBLOB.vt = VT_ARRAY | VT_UI1;
varBLOB.parray = psa;
m_pRecordset->GetFields()->GetItem("photo")->AppendChunk(varBLOB);
}
连接的代码入下不过连接库好象没有问题.
AfxOleInit();
m_pConnection.CreateInstance("ADODB.Connection");
/******************Á¬½ÓÊý¾Ý¿â********************/
try
{
m_pConnection->ConnectionTimeout = 8;
//Á¬½ÓSQL SERVER
//m_pConnection->Open("Driver=SQL Server;Database=test;Server=127.0.0.1;UID=sa;PWD=;","","",adModeUnknown);
//Á¬½ÓACCESS2000
m_pConnection->Open("Provider=Microsoft OLE DB Provider for Oracle;Data Source=deviser","user1","pass1",adModeUnknown);
}
catch(_com_error e)///²¶×½Òì³£
{
AfxMessageBox("Êý¾Ý¿âÁ¬½Óʧ°Ü!");
return FALSE;
}
/**********************************************/
m_pRecordset.CreateInstance("ADODB.Recordset");
HRESULT hr = m_pRecordset->Open("SELECT * FROM userphotooo",_variant_t((IDispatch *)theApp.m_pConnection,true),adOpenDynamic,adLockPessimistic,adCmdText);
char *pBuf = m_pBMPBuffer;
VARIANT varBLOB;
SAFEARRAY *psa;
SAFEARRAYBOUND rgsabound[1];
if(pBuf)
{
rgsabound[0].lLbound = 0;
rgsabound[0].cElements = m_nFileLen;
psa = SafeArrayCreate(VT_UI1, 1, rgsabound);
for (long i = 0; i < (long)m_nFileLen; i++)
SafeArrayPutElement (psa, &i, pBuf++); varBLOB.vt = VT_ARRAY | VT_UI1;
varBLOB.parray = psa;
m_pRecordset->GetFields()->GetItem("photo")->AppendChunk(varBLOB);
}
连接的代码入下不过连接库好象没有问题.
AfxOleInit();
m_pConnection.CreateInstance("ADODB.Connection");
/******************Á¬½ÓÊý¾Ý¿â********************/
try
{
m_pConnection->ConnectionTimeout = 8;
//Á¬½ÓSQL SERVER
//m_pConnection->Open("Driver=SQL Server;Database=test;Server=127.0.0.1;UID=sa;PWD=;","","",adModeUnknown);
//Á¬½ÓACCESS2000
m_pConnection->Open("Provider=Microsoft OLE DB Provider for Oracle;Data Source=deviser","user1","pass1",adModeUnknown);
}
catch(_com_error e)///²¶×½Òì³£
{
AfxMessageBox("Êý¾Ý¿âÁ¬½Óʧ°Ü!");
return FALSE;
}
/**********************************************/
m_pRecordset.CreateInstance("ADODB.Recordset");
HRESULT hr = m_pRecordset->Open("SELECT * FROM userphotooo",_variant_t((IDispatch *)theApp.m_pConnection,true),adOpenDynamic,adLockPessimistic,adCmdText);
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货