在程序中压缩sql server2000的数据库备份文件的代码
2018-10-12 13:56
776 查看
怎样压缩sql server2000的数据库备份文件,像rar一样?小弟有一7m的sql server2000
数据库备份文件,在程序中怎样压缩啊?
这是一段压缩图片的代码,压缩文件原理相同,只需稍做改动即可。
数据库备份文件,在程序中怎样压缩啊?
procedure TForm1.Button2Click(Sender: TObject);
var
SHExecInfo: SHELLEXECUTEINFO;
begin
SHExecInfo.cbSize := sizeof(SHELLEXECUTEINFO);
SHExecInfo.fMask := SEE_MASK_NOCLOSEPROCESS;
SHExecInfo.Wnd := Handle;
SHExecInfo.lpVerb := nil;
SHExecInfo.lpFile := 'WinRAR.exe';
SHExecInfo.lpParameters := 'a e:\qwqw.rar e:\qwqw';
SHExecInfo.lpDirectory := nil;
SHExecInfo.nShow := SW_SHOW;
SHExecInfo.hInstApp := Handle;
ShellExecuteEx(@SHExecInfo);
WaitForSingleObject(SHExecInfo.hProcess, INFINITE);
CloseHandle(SHExecInfo.hProcess);
ShellExecute(application.MainForm.Handle,'open','winrar.exe',PChar('a e:\zqzq.rar e:\zqzq'),'',SW_show);
ShowMessage('压缩完毕!'); }
这是一段压缩图片的代码,压缩文件原理相同,只需稍做改动即可。
var
mss: TMemoryStream;
zip: TDeCompressionStream;
zip1: TCompressionStream;
fs : TFileStream;
fBuf: Array[0..16383] of Byte;
flen: Integer;
//从数据库中取出图片
//...写出SQL语句以取得有图片的记录,此处从略
mss := TMemoryStream.Create;
fs := TFileStream.Create('filename.jpg',fmCreate or fmOpenWrite);
try
TBlobField(Que.FieldByName('pic')).SaveToStream(mss);
zip := TDeCompressionStream.Create(fs);
try
flen := zip.Read(fbuf, SizeOf(fBuf));
while flen > 0 do begin
fs.Write(fbuf, flen);
flen := zip.Read(fbuf, SizeOf(fBuf));
end;
finally
FreeAndNil(zip);
end;
finally
mss.Free;
fs.Free;
end;
//将文件filename.jpg中的图片保存到数据库
//...写出SQL语句,打开Que,并定位到要保存图片的记录,此处从略
fs := TFileStream.Create('filename.jpg',fmOpenRead);
mss := TMemoryStream.Create;
try
zip1 := TCompressionStream.Create(clDefault,mss);
try
flen := fs.Read(fbuf, SizeOf(fBuf));
while flen > 0 do begin
zip1.Write(fbuf, flen);
flen := fs.Read(fbuf, SizeOf(fBuf));
end;
//保存到数据库
TBlobField(Que.FieldByName('pic')).LoadFromStream(mss);
Que.UpdateBatch();
//...
finally
zip1.Free;
end;
finally
fs.Free;
mss.Free;
end;
您可能感兴趣的文章:
相关文章推荐
- 在程序中压缩sql server2000的数据库备份文件的代码
- mysqldump定时备份数据库,形成压缩文件,并记录dump日志
- 用Java实现zip压缩文件和目录程序代码(二)
- 备份数据库 程序代码
- 批量备SAP中CBO ABAP 程序代码为TXT文件备份
- C#备份及还原数据库的实现代码(粗略) // 利用C#还原数据库(SQL SERVER)备份文件到指定路径
- 在ASP.NET项目中的web.config文件里配置数据库连接并在程序代码中获取连接字符串
- 自动压缩备份数据库文件至指定服务器
- 云计算之路-试用Azure:数据库备份压缩文件在虚拟机上的恢复速度测试
- 批量备SAP中CBO ABAP 程序代码为TXT文件备份
- 利用RMAN备份压缩技术对数据库做全备并备份控制文件和归档日志后删除已备份的归档日志
- 操作、压缩MDB文件;使用ADO读写Mysql数据库;建立数据库和表的VBS脚本代码(2013-08-26 11:39:34)
- 压缩日志及数据库文件大小(SQL SERVER2000)
- 数据库备份文件自动压缩脚本
- python程序:备份MS SQL数据库到压缩文件
- Grails示例程序-用代码实现将文件压缩后下载
- window环境下定时备份数据库文件、项目代码并且定期删除
- 文件转移后压缩并直接存进数据库后直接读出并解压完整代码
- winform程序,备份数据库+并压缩+并删除以前的备份