还是没有解决问题啊!关于TBlobStrea!
还是没有解决问题,所以继续提问!
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,好像写入的数据不对。