在delphi中处理sqlserver中的image、text字段计算机二级考试
文章作者 100test 发表时间 2009:06:17 19:13:32
来源 100Test.Com百考试题网
编辑特别推荐:
全国计算机等级考试(等考)指定教材
全国计算机等级考试学习视频
全国计算机等级考试网上辅导招生
全国计算机等级考试时间及科目预告
百考试题教育全国计算机等级考试在线测试平台
全国计算机等级考试资料下载
全国计算机等级考试论坛
计算机等级考试四级应用题解析汇总
2009年下半年全国计算机二级考试报名时间从6月1日起已经开始报名。详情点击:2009年下半年全国计算机等级考试各地报名点汇总。2009年下半年全国计算机二级考试时间是2009年9月19日至23日。更多优质资料尽在百考试题论坛 百考试题在线题库。
下面通过详细的例子来讲述如何在delphi中处理sql server中的image、text字段。因为实际开发的需要, 我们需要处理的是text类型的字段,包括读和写。网上很多相关的文章都是讲述的对image的读写操作,中国自学编程网,www.zxbc.cn 下面首先介绍如何将图象存储在sql server的image字段。
其中 DataMConn为一个针对数据库操作的单元,放置一个ADOConnection,一个ADOQuery
//image to database
procedure TfrmText.Button1Click(Sender: TObject).
var
bm:tbitmap.
ms:TMemoryStream.
begin
ms:=TMemoryStream.Create.
bm:=TBitmap.Create.
bm.Assign(image1.Picture.Bitmap).
bm.SaveToStream(ms).
with DataMConn.ADOQHistory do
begin
Close.
SQL.Clear.
SQL.Add(’INSERT INTO Package(PackageID,TempPackage) VALUES(:x,:y)’).
Parameters.ParamByName(’y’).LoadFromStream(ms,ftBlob).
Parameters.ParamByName(’x’).Value := ’aaaaa’.
ExecSQL.
end.
end.
//show image
procedure TfrmText.Button2Click(Sender: TObject).
var
Stream:TStream.
bm:tbitmap.
begin
with DataMConn.ADOQHistory do
begin
Close.
SQL.Clear.
SQL.Add(’SELECT * FROM Package WHERE packageID= ’’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!’).
Exit.
end.
end.//try
end.
end.
下面的两个例子是如何处理text类型的字段,其中读取的时候,利用了一个TDBMemo控件,来加载读取的流数据,然后赋值给一个WideString类型的变量str
//text to stream
procedure TfrmText.Button3Click(Sender: TObject).
var
str : WideString.
ss:TStringStream.
i : integer.