文件如何保存到数据库表字段里(100分)

  • 主题发起人 主题发起人 yar
  • 开始时间 开始时间
Y

yar

Unregistered / Unconfirmed
GUEST, unregistred user!
代码:
[blue]我再SQL SERVER中建立表,其中设置一个字段为VARBINARY。希望经过对话框将所选文件保存到改字段中。请问如何处理?[/blue]
 
procedure TForm1.Button1Click(Sender: TObject);
var strm1:tmemorystream;
begin
strm1:=tmemorystream.Create;
try strm1.LoadFromFile('c:/temp1.bmp');
ado1.Close;ado1.SQL.Clear;ado1.SQL.Add('select testbinary from table1');
ado1.Open;
ado1.Append;
(ado1.FieldByName('testbinary') as tblobfield).LoadFromStream(strm1);
ado1.Post;
finally strm1.Free;end;
end;
另外,不要用VARBINARY和BINARY,两者在SQL里面最大为8000字节,用IMAGE类型,
它为2的31次-1字节。
 
可是我要保存的是其他类型的文件,可以用image类型吗?
 
sql里面没有bolb字段吗?
 
保存为二进制文件就行
 
能不能具体一点呢?呵呵,或者告诉我例子在哪儿找,OK?谢谢
 
BINARY、VARBINARY、IMAGE都是SQL SERVER的二进制数据类型,并不是取名是IMAGE,就
只能存放图形。二进制存储方式和文件格式没有关系,这个例子可以存储DOC、TXT等等。
你难道连把例子贴到程序里,改改文件名试一试的力气都没有?
 
呵呵!好大的火气,好的!我知道了,这就行动行动。谢谢你们:)
 
试过了,不成
我试用CLIENTDATASET,而且存的是*.id文件
 
???我又试了试,用TSTRINGSTREAM,成功了~
不知道TSRINGSTREAM、TMEMORYSTEAM有什么区别
谢谢J_SHEN2000:)
 
后退
顶部