救救我吧,已经困惑了整整1天了 delphi+DB2+BLOB大字段的使用
create table tb_info(
content clob(100000) --blob(100000)都可以
)
如果用一般的sql语句最多插入和表空间的pagesize大的字段
如果用delphi示例里的方法,在post的时候报转换类型错误
var
P: PChar;
S: Integer;
BS: TADOBlobStream;
begin
if not (ADOTable1.State in [dsEdit, dsInsert]) then
ADOTable1.Edit;
BS := TADOBlobStream.Create(TMemoField(ADOTable1.Fields[1]), bmWrite);
try
S := Memo1.GetTextLen;
Inc(S);
P := AllocMem(S);
FillChar(P^, S, #0);
Memo1.GetTextBuf(P, S);
BS.Write(P^, S);
finally
BS.Free;
FreeMem(P, S);
end;
ADOTable1.post(); --出错
end;