在vc6中使用ado读取oracle中的blob字段

在vc6中使用ado读取oracle中的blob字段

ID:11292940

大小:26.93 KB

页数:5页

时间:2018-07-11

在vc6中使用ado读取oracle中的blob字段_第1页
在vc6中使用ado读取oracle中的blob字段_第2页
在vc6中使用ado读取oracle中的blob字段_第3页
在vc6中使用ado读取oracle中的blob字段_第4页
在vc6中使用ado读取oracle中的blob字段_第5页
资源描述:

《在vc6中使用ado读取oracle中的blob字段》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、在VC6中使用ADO读取Oracle中的BLOB字段   今天尝试将存储于Oracle(版本:9.0.1.1.1)中BLOB字段里的图像文件读出来,文件量很小,不到10K。使用vc6+ADO,使用控制台程序初步尝试如下:::CoInitialize(NULL); //初始化OLE/COM库环境_ConnectionPtr m_pConn;try{    HRESULT hr = m_pConn.CreateInstance("ADODB.Connection");    if(FAILED(hr))    

2、{        cout<<"Create ADO Connection failed"<

3、rd = "stuinfo";        hr = m_pConn->Open((_bstr_t)oracleConnectionString, (_bstr_t)oracleUserID, (_bstr_t)oraclePassword, adModeUnknown);    if (FAILED(hr))    {        cout<<"Can not connect to database"<

4、ut<<"Connect to database successfully!"<

5、LED(hr))    {        cout<<"Create ADO Recordset failed"<

6、set->Open(bstrSQL, (IDispatch*)m_pConn, adOpenDynamic, adLockOptimistic, adCmdText);    if (FAILED(hr))    {        cout<<"Open ADO Recordset failed"<

7、dl;    exit(0);}long lDataSize = m_pRecordset->GetFields()->GetItem("stupic")->ActualSize;cout<<"BLOB length is "< 0){    _variant_t varBLOB;    varBLOB = m_pRecordset->GetFields()->GetItem("stupic")->GetChunk(lDataSize);    

8、    //判断数据类型是否正确    if(varBLOB.vt == (VT_ARRAY 

9、 VT_UI1))    {        BYTE *pBuf = NULL;        //得到指向数据的指针        SafeArrayAccessData(varBLOB.parray, (void **)&pBuf);        /**//***这里是对pBuf数据的处理***/        

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。