还是没有解决问题啊!关于TBlobStrea!

genesisking 2003-12-08 09:29:22
还是没有解决问题,所以继续提问!
oracle数据库,table1是TTable;Blob类型;
Table1->Open() ;
Table1->Insert() ;
Table1->FieldByName("id")->AsInteger = MaxID;
Table1->FieldByName("udate")->AsString = Now().FormatString("yyyymmdd") ;
Table1->FieldByName("utime")->AsString = Now().FormatString("hhnnss") ;
Table1->FieldByName("name")->AsString = file_name;

pStream = (TBlobStream *)Table1->CreateBlobStream(Table1->FieldByName("filename"), bmReadWrite);
try
{
iFileHandle = FileOpen(update_file, fmOpenRead);
iFileLength = FileSeek(iFileHandle,0,2);
FileSeek(iFileHandle,0,0) ;
pszBuffer = new char[iFileLength+1];
memset(pszBuffer,0,iFileLength+1) ;
iBytesRead = FileRead(iFileHandle, pszBuffer, iFileLength);
FileClose(iFileHandle);
pStream->Seek(0, soFromBeginning);
pStream->Write(pszBuffer, iFileLength+1);
Table1->Post();
Table1->Edit();
}
__finally
{
delete [] pszBuffer ;
delete pStream;
}
BDE的BLOB SIZE改为10000k,好像也不行。提示:定位器无法扩展事务处理!
后来我用了ADOTable跟ADOQuery,好像写入的数据不对。
...全文
33 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
书生 2003-12-08
  • 打赏
  • 举报
回复
pStream = (TBlobStream *)Table1->CreateBlobStream(Table1->FieldByName ("filename"), bmReadWrite);

这句前加:

TBlobStream*pStream;
bullHEcow 2003-12-08
  • 打赏
  • 举报
回复
帮你顶
genesisking 2003-12-08
  • 打赏
  • 举报
回复
to: lluunn007(书生:CSDN上海腐败--地主) 这句话是有的;
只是贴上来的时候没有贴而已!
伤心跪求大家的帮忙!

13,873

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧