我在用D6+ACCESS时遇到一个问题
表中有一个为OLB 类型的字段准备以后在程序中以用户的方式存图片入数据库中,
可是不知道如何设置,
具体的代码如何写?
望高手告知。
表中有一个为OLB 类型的字段准备以后在程序中以用户的方式存图片入数据库中,
可是不知道如何设置,
具体的代码如何写?
望高手告知。
解决方案 »
- SQL存储图片的路径,在DBImage中显示图片?
- 点击网页上的链接,启动服务器端的程序就像C#中的clickonce如何在delphi中实现
- 在delphi里用clientdataset 如何调用sql server 的存储过程
- 一个奇怪的问题:将静态数组和动态数组写入二进制文件,产生成结果却不一样。
- QuickReport的问题,如何打印空行至页或column结束?
- ■■■如何用程序实现实时的获得DOS程序的输出?和实时的向DOS程序输入?
- 谁解决了,400分儿,决不食言
- TImage的使用问题
- image 控件的问题
- 简单的问题
- 高手指教——————哥哥们帮忙!!!
- 还有个菜鸟问题,用什么控件在截面上显示大段的文字,READONLY的就可以了
const
Buf_Size=2048;//写数据的缓冲大小。
var
MyImg:TPicture;
MyStream:TstringStream;
MyConn,MyRec:variant;
SourceSize,DestSize:int64;
begin
//--创建流并将图形数据读入。(使用Graphics单元)
MyStream:=TstringStream.Create('');
MyImg:=TPicture.create;
MyImg.LoadFromFile('test.jpg');
MyImg.Graphic.SaveToStream(MyStream);
MyStream.Position:=0;
//----------------------
SourceSize:=MyStream.Size;//读出图形数据的大小.
DestSize:=0; //初始化写入的数据量变量。
//----进行数据库连接。注:要使用comObj单元
MyConn:=createOleObject('AdoDb.Connection');
MyConn.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source=test.mdb;Persist Security Info=False';
MyConn.open;
MyRec:=CreateOleObject('AdoDB.recordset');
MyRec.Open ('MyPic',MyConn,3,3,2);
//-----------增加新记录,并写入图形数据。
Myrec.addnew;
while DestSize<=SourceSize do
begin
MyRec.Fields['Picture'].AppendChunk(Mystream.ReadString(buf_Size));
DestSize:=DestSize+buf_Size;
end;
MyRec.update;
//----------------------------------
MyRec.close;
MyImg.Free ;
MyStream.Free ;
end;
注:要将图形数据从库中读出原理一样.
"test.Mdb"库结构为:
---表名:MyPic
---该表中只有一个字段:'Picture',数据类型为'Ole 对象'