我在用DELPH6做一个数据备份的页面
1、由于没有相关的经验,请教一般应该备份些什么内容
2、我想将整个数据库内容全备份的话,应该怎么做,我用的是SQL2000,新建了一个数据库。
谢谢!
1、由于没有相关的经验,请教一般应该备份些什么内容
2、我想将整个数据库内容全备份的话,应该怎么做,我用的是SQL2000,新建了一个数据库。
谢谢!
解决方案 »
- 又是delphi问题
- 单张表数据记录过多该如何处理?
- TFileStream流来读取文件的问题
- 一个简单问题:如何连接BDF数据库?
- 远程数据模块怎样得到客户端的名称和IP
- 斑竹兄弟们一定要救命啊,QRDBRichtext里怎么老是在报表title下部分显示不了大字段的,移到上部分又行的?我快不行拉。。
- 求个最短距离算法
- 我在用delphi6开发一个药品零售系统,销售小票采用套打,怎么写这个打印程序?
- DBGrid里的cofirm delete对话框中的字能不能改成汉字
- 怎样去掉原代码的只读属性,各位大虾请进
- sql语句问题
- 在报表中,QRRichText和QRMemo控件可显示的内容有大小限制吗
关于restore的代码,自己查看一下sql 2000 帮助文档。
2 看以前的帖子吧,很多,你可以直接拷贝数据和日志文件,或者用sql的备份恢复命令back/restore或者将数据保存到其他数据库(sql或其他的).....
var
S: string;
begin
S := '';
if SelectDirectory('选择备份文件存放目录', '', S) then
begin
messagebox(0,'备份需花费一段时间,视计算机配置情况!','提醒',MB_IconInformation+MB_DEFButton1);
dm.adoquery2.close;
dm.adoquery2.sql.clear;
dm.adoquery2.sql.add('backup database dbname to disk='+''''+s+'\'+datetostr(date)+'.bak'+''''+'with init');
dm.adoquery2.ExecSQL;
messagebox(0,'备份完毕!','恭喜',MB_IconInformation+MB_DEFButton1);
end;
end;
将dsShowDevice连接到数据库的Master数据库
连接字符串为ConStr(自己做好)
dsShowDevice.ConnectionString := ConStr;
dsShowDevice.CommandText := 'select * from sysdevices where name = ''设备文件名''';
dsShowDevice.Open;
如果不存在要新建一个设备文件
否则删除原来存在的设备文件删除过程:
dpBackup.Close;
dpBackup.ProcedureName := 'sp_dropdevice';
dpBackup.Parameters.CreateParameter('@LogicalName',ftString,pdInput,20,'设备文件名称');
dpBackup.ExecProc;然后建立新的设备文件
dpBackup.Close;
dpBackup.ProcedureName := 'sp_addumpdevice ';
dpBackup.Parameters.CreateParameter('@devType',ftstring,pdInput,20,'disk');
dpBackup.Parameters.CreateParameter('@LogicalName',ftString,pdInput,20,'设备文件名');
dpBackup.Parameters.CreateParameter('physicalname',ftString,pdInput,260,备份文件名);
dpBackup.ExecProc;然后进行备份
cmdBackup.CommandText := 'backup database TV to 设备文件名';
cmdBackup.Execute();其中设备文件名是在SqlServer中进行备份操作是的那个名称
备份文件名是在硬盘上的完整名称
dpBackup: TADOStoredProc;
cmdBackup: TADOCommand;
dsShowDevice: TADODataSet;
2、生成"2003-6-27.bak"的文件,双击是用记事本打开,里面是乱码,不明白这样备份是否有用,如何将bak文件还原成数据库?