高手请进:用ADO插入CLOB到ORACLE,为什么数据被截掉一部分?
环境:oracle 8.1.7
oraOLEdb provider 8.1.7
ado 2.5
VC++6.0
过程:
需要将一个大文本插入数据库,通过ADO的参数化方式,执行SQL命令,整个过程没有错误报告,但是通过 select dbms_lob.getlength(clob) from...返回的值比原来数据的长度要小,换用ORACLE自己的例子,通过安全数组传递数据块到ORACLE中的存储过程,得到的数据长度只有原先的一半,哪位高手能告诉我为什么?急!!!
connnect db...
connect string is: provider = OraOLEDB.Oracle ...
CString strCmd = "insert into t_article values (?)";
_CommandPtr pCmd.CreateInstance(__uuidof(Command));
pCmd->ActiveConnection = m_pActiveConn;
_ParameterPtr paraContent_Cont = m_pCommandCont->CreateParameter("Content",adLongVarChar,adParamInput,ART_MAX_LEN);
TCHAR tcNewsContent[8k];//an article read from file
_variant_t vt_content = _variant_t(tcNewsContent);
vt_content.ChangeType(VT_BSTR);
pCmd->Parameters->GetItem("Content")->AppendChunk(vt_content);
pCmd->Execute(NULL,NULL,adCmdText|adExecuteNoRecords);