delphi计算字段:在delphi中处理sql server中的image、text字段来源: 发布时间:星期四, 2009年2月12日 浏览:112次 评论:0
下面通过详细 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() 其中DataMConn为 ![]() ![]() ![]() ![]() ![]() //imagetodatabase procedureTfrmText.Button1Click(Sender:TObject); var bm:tbitmap; ms:TMemoryStream; begin ms:=TMemoryStream.Create; bm:=TBitmap.Create; bm.Assign(image1.Picture.Bitmap); bm.SaveToStream(ms); withDataMConn.ADOQHistorydo begin Close; SQL.Clear; SQL.Add(’INSERTINTOPackage(PackageID,TempPackage)VALUES(:x,:y)’); Parameters.ParamByName(’y’).LoadFromStream(ms,ftBlob); Parameters.ParamByName(’x’).Value:=’aaaaa’; ExecSQL; end; end; //showimage procedureTfrmText.Button2Click(Sender:TObject); var Stream:TStream; bm:tbitmap; begin withDataMConn.ADOQHistorydo begin Close; SQL.Clear; SQL.Add(’SELECT*FROMPackageWHEREpackageID=’’aaaaa’’’); Try Open; stream:=DataMConn.ADOQHistory.CreateBlobStream(FieldByName(’TempPackage’),bmRead); bm:=TBitmap.Create; bm.LoadFromStream(stream); image2.Picture.bitmap.Assign(bm); stream.Free; except begin ShowMessage(’Error!’); [Page] Exit; end; end;//try end; end; 下面 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() //texttostream procedureTfrmText.Button3Click(Sender:TObject); var str:WideString; ss:TStringStream; i: ![]() begin str:=’sstrstrststrstrststrstrstrsttrstrstrrstrstr’; fori:=1to10000do begin str:=str+’sstrstrststrstrststrstrstrsttrstrstrrstrstr’;//43万多个字节 end; str:=str+’E’; ss:=TStringStream.Create(str); //bm:=TBitmap.Create; //bm.Assign(image1.Picture.Bitmap); //bm.SaveToStream(ms); withDataMConn.ADOQHistorydo begin Close; SQL.Clear; SQL.Add(’INSERTINTOtPackage(PackageID,TempPackage)VALUES(:x,:y)’); Parameters.ParamByName(’y’).LoadFromStream(ss,ftMemo); Parameters.ParamByName(’x’).Value:=’aaaaa’; ExecSQL; end; end; //readtexttoaTDBMemo procedureTfrmText.Button4Click(Sender:TObject); var stream:TStream; str:WideString; begin withDataMConn.ADOQHistorydo begin Close; SQL.Clear; SQL.Add(’SELECTTempPackageFROMtPackageWHEREpackageID=’’aaaaa’’’); Open; ![]() begin [Page] Stream:=DataMConn.ADOQHistory.CreateBlobStream(FieldByName(’TempPackage’),bmRead); stream.Position:=0; AMemo.Lines.LoadFromStream(stream); stream.Free; end; end; end; //下面是把text字段 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() procedureTfrmText.Button5Click(Sender:TObject); var Buffer:PChar; MemSize:Integer; Stream:TStream; str:WideString; begin withDataMConn.ADOQHistorydo begin Close; SQL.Clear; SQL.Add(’SELECTTempPackageFROMtPackageWHEREpackageID=’’aaaaa’’’); Open; ![]() begin Stream:=DataMConn.ADOQHistory.CreateBlobStream(FieldByName(’TempPackage’),bmRead); try MemSize:=Stream.Size; Inc(MemSize);//Makeroomforthebuffer’snullterminator. Buffer:=AllocMem(MemSize);//Allocatethememory. try Stream.Read(Buffer^,MemSize);//ReadTempPackagefield ![]() str:=Buffer; finally FreeMem(Buffer,MemSize); end; finally [Page] Stream.Free; end; end; end; end; 0
相关文章读者评论发表评论 |
|