三层结构下,如何保存二进制大型数据

任你笑 2001-11-09 12:49:13

三层结构下,如何保存二进制大型数据?

目前我是通过参数方式传递,但有是总会少几字节,而同样的方法
在两层下是正常的
...全文
91 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
1860 2002-02-23
  • 打赏
  • 举报
回复
刚刚解决这个问题.做的项目是一个办公自动化系统.在公文传输中,比如发通知的时候可以带n多的附件,附件可能是任何类型的东东儿.方法步骤如下:

1.将应用程序服务器端对应datasetprovider的options的fetchblobondemand选项设为true,因为false情况下,客户端的clientdataset是不取blob数据的.或者在 false情况下用clientdataset的fetchblob方法取得数据库中的数据.
2.源程序如下(win2000/delphi/ocracle)
procedure writetoblobfield;
var
tfStream:TFileStream;
tbStream:TBlobStream;
nbufsize:integer;
pbuf:PChar;
begin
With clientdataset1 do
begin
if Active = false then
Active := true;
Append;
try
tfStream:=TFileStream.Create(FilePath,fmOpenRead);
nbufsize:=tfStream.Size +1;
pbuf:=AllocMem(nbufsize);
tfStream.Read(pbuf^,nbufsize);
tbStream:=TBlobStream.Create((fieldbyname('TestImage') as TBlobField),bmWrite);
tbStream.Seek(0,SoFromBeginning);
tbStream.Write(pbuf^,nbufsize);
finally
tfStream.Free ;
tbStream.Free ;
post;
FreeMem(pbuf,nbufsize);
Active:=False;
end;
end;
end;

procedure savetoclient;
var
filebody:tstream;
tempfile:tmemostream;
begin
try
filebody:=clientdataset.createblobstream(Tblobfield,bmread);
filebody.position:=0;
tempfile:=tmemostream.create;
tempfile.loadfromstream(filebody);
tempfile.savetostream(文件名);
finally
tempfile.free;
filebody.frdd;
end;
end;
end;
任你笑 2001-11-09
  • 打赏
  • 举报
回复
这种方法我测试过:
TClientDataset端用参数方式把二进制数据写入,有时要少1字节,如保存20000字节,实际只保存19999字节,数据由 chr(1)-chr(255)循环产生
liuchf 2001-11-09
  • 打赏
  • 举报
回复
直接用TClientDataset与服务器连接,保存就可以.
大家这么喜欢,我就不要资源分了,改成0分了,我为我一己私利感到抱歉…… MongoDB学习手册 ......................................................................................................................... 1 说明.......................................................................................................................................... 2 一、 Mongodb简介 .......................................................................................................... 4 二、 MongoDB特性 ......................................................................................................... 5 适用场景: ....................................................................................................................... 5 不适用场景: ................................................................................................................... 6 三、 MongoDB的工作方式.............................................................................................. 6 四、 MongoDB的下载 ..................................................................................................... 8 五、 MongoDB的安装 ..................................................................................................... 9 六、 MongoDB数据类型................................................................................................ 12 1. Timestamp类型 ...................................................................................................... 12 2. ObjectId类型 .......................................................................................................... 12 3. 数据库关联 ............................................................................................................. 14 七、 GridFS文件系统 ..................................................................................................... 15 八、 索引 ......................................................................................................................... 16 九、 主(Master)/从(slave)数据库同步 ................................................................ 20 1. 建立主/从服务器 ................................................................................................... 20 2. 相关参数说明 ......................................................................................................... 21 3. Slave顶替Master ................................................................................................... 22 4. 切换Master/Slave角色 ......................................................................................... 22 5. 更新主服务器位置 ................................................................................................. 22 十、 MongoDB分片和集群............................................................................................ 24 1. 简单分片实例 ......................................................................................................... 24 2. 高级分片实例 ......................................................................................................... 29 十一、 数据库基本操作:增查删改 ............................................................................. 37 1. Insert ....................................................................................................................... 37 2. Query ....................................................................................................................... 38 3. Remove.................................................................................................................... 52 4. Update ..................................................................................................................... 53 十二、 Shell控制台 ........................................................................................................ 62 1. 执行.js文件 ............................................................................................................ 62 2. –eval ........................................................................................................................ 62 3. 脚本和互动的区别 ................................................................................................. 62 十三、 安全与认证 ......................................................................................................... 63 1) 开启安全认证 ......................................................................................................... 63 2) 添加用户 ................................................................................................................. 64 3) 认证 ......................................................................................................................... 64

5,928

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧