我一开始直接insert了,结果sql语句超过4000就报错,不让插入,怎么样才能往clob里插入大量信息?
最好有个例子,谢过了。
例子来了:下面的例子是将一个文件内容写入blob字段。自己研习吧
=============
CFile file;
char *pBuf ;
VARIANT varBLOB;
SAFEARRAY *psa;
SAFEARRAYBOUND rgsabound[1];
if(sGuideFile!="")
{
char *sGFile;
sGFile=sGuideFile.GetBuffer(sGuideFile.GetLength());
//指南
if( !file.Open( sGFile, CFile::modeRead) )
return "文件操作失败!";
m_nFileLen = file.GetLength();
m_pBMPBuffer = new char[m_nFileLen + 1];
if(!m_pBMPBuffer)
return "文件操作失败!";
if(file.ReadHuge(m_pBMPBuffer,m_nFileLen) != m_nFileLen)
{
delete[] m_pBMPBuffer;
return "文件操作失败!";
}
file.Close();
pBuf = m_pBMPBuffer;
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("PM_DIREC")->AppendChunk(varBLOB);
}
需要用oracle提供的driver
_bstr_t bstrConnect="Provider=OraOLEDB.Oracle;Data Source=orcl;User Id=system;Password=oracle;";