SQL Server2000中image类型字段的写入和读出问题(50分)

  • 主题发起人 主题发起人 nywjx
  • 开始时间 开始时间
N

nywjx

Unregistered / Unconfirmed
GUEST, unregistred user!
我在SQL Server2000中建立一张表:"测试表"
只有一个字段,类型是image。
请问我在delphi中怎么能把已装载图片信息的TBitMap类型或TJPEGImage类型的
变量写入这张表中?我没有用ADO,因为它有问题。
我现在用的是普通的Query、table、StoreProc这些。
 
用流的方式
var
FS: TBlobStream;
begin
if not (Query1.State in [dsInsert, dsEdit]) then Query1.Insert;
FS :=..;//指定为图片
try
Query1Images.LoadFromStream(FS);
finally
FS.Free;
end;
Query1.Post;
end;
 
搜索一下就帖,太多了!
 
用DbImage不用你写代码。如果写代码,就是用流的方法。
 
网上太多了,上一些专业站点很容易查到
 
数据库SQL Server,存放文件的字段类型
ImageCreate Table MyTable(FileName VarChar(20),FileSource Image)
存放文件到数据库
var FileName :String;FileName := ExtractFileName(OpenDialog1.FileName);
with Query do begin
Close;
Sql.Clear;
Sql.Add('INSERT INTO MyTable VALUES (:FileName,:FileSource)');
ParamByName('FileName').AsString := FileName;
ParamByName('FileSource').LoadFromFile(OpenDialog1.FileName,ftBolob);
ExecSQL;
end;
从数据库中取出文件
var FileName :String;begin
with Query do begin
Close;
Sql.Clear;
Sql.Add('SELECT * FROM MyTable WHERE FileName = '?'');
Open;
FileName := 'c:/'+FieldByName('FileName').AsString;
(FieldByName('FileSource') AS TBlobField).SaveToFile(FileName);
end;end;
 
to :ugvanxk
能不能直接显示图片?存为文件后再显示会不会慢?
 
你自己不会试啊,就知道问
 
多人接受答案了。
 
后退
顶部