定义:
TUser = packed record Name : string[50]; CanAsk : boolean; NumberOfQuestions : integer; end;
存储:
var User : TUser; blobF : TBlobField; bs : TStream; begin User.Name := edName.Text; User.NumberOfQuestions := StrToInt(edNOQ.Text) ; User.CanAsk := chkCanAsk.Checked; myTable.Insert; blobF := myTable.FieldByName('data') as TBlobField; bs := myTable.CreateBlobStream(blobF, bmWrite) ; bs.Write(User,SizeOf(User)) ; bs.Free; end; end;
读取:
var User : TUser; blobF : TBlobField; bs : TStream; begin if myTable.FieldByName('data').IsBlob then begin blobF := DataSet.FieldByName('data') as TBlobField; bs := myTable.CreateBlobStream(blobF, bmRead) ; bs.Read(user,sizeof(TUser)) ; bs.Free; end; end; edName.Text := User.Name; edNOQ.Text := IntToStr(User.NumberOfQuestions) ; chkCanAsk.Checked := User.CanAsk; end;
本文详细介绍了如何使用Delphi在Blob字段中读写自定义记录类型TUser。包括如何将记录写入Blob字段以及从Blob字段读取记录的过程。
651

被折叠的 条评论
为什么被折叠?



