Welcome

首页 / 软件开发 / C++ / BCB实现BLOB字段的读写

BCB实现BLOB字段的读写2010-03-18对于SQL中的TEXT、IMAGE、MEMO字段的存取,可以采用下列程序:

BLOB字段的读取:

TBlobSTream* TemplateStream;
char* TempPlatePtr;
TemplateStream=new TBlobStream((TBlobField*)WebQuery->FieldByName
("SearchTem"),bmReadWrite);
TemplatePtr= new char[TemplateStream->Size];
TemplateStream->Read(TemplatePtr, TemplateStream->Size);
BLOB字段的写入:
TBlobSTream* TemplateStream;
char* TempPlatePtr;
TemplateStream=new TBlobStream((TBlobField*)WebQuery->FieldByName
("SearchTem"),bmReadWrite);
TemplatePtr= new char[TemplateStream->Size];
TemplateStream->Write(TemplatePtr, TemplateStream->Size);

________________________________________________________________

补充:

获得字段的大小用函数datalength

SQL Server端要作一点设置:

By default, WRITETEXT is a nonlogged operation. This means that

text or image data is not logged when it is written into the database.

To use WRITETEXT in its default, nonlogged state,

//注意!!

the system administrator must use the sp_dboption system stored

procedure to set select into/bulkcopy,

//

which allows nonlogged data to be inserted.

做了试验,直接写SQL语句好象不行.

____________________________________________________________________