我只能备份在服务器上,我的软件装在客户端,也就是把服务器上的数据库备份到客户端,请大虾帮忙
解决方案 »
- delphi2009新建的一个项目,编译后就杀了
- 请 大 家 帮 帮 忙!
- 明天就要回家了,散分!!
- 紧急求助!执行刷新代码后,DbgridEh中打回车怎么不跳到下一列而是下一行了?
- 刚找到一份工作,过些天去上班!!要用到UDP,TCP/IP,Stock ,请问它们之间有什么区别?
- 如何调用调用动态连接库?
- 请问如何得到jpg的yuv数据?
- DELPHI中知道单价和数量计算总价问题?急
- 如何用SQL语言对一表的数据进行插入操作?
- 通过外部程序控制,点击按钮btn1就相当于点击按钮btn2。
- ACCESS中可以用模糊查找吗?怎么用?
- Re: ***********TabControl******************
TO < backup_device > [ ,...n ]
[ WITH
[ BLOCKSIZE = { blocksize | @blocksize_variable } ]
[ [ , ] DESCRIPTION = { 'text' | @text_variable } ]
[ [ , ] DIFFERENTIAL ]
[ [ , ] EXPIREDATE = { date | @date_var }
| RETAINDAYS = { days | @days_var } ]
[ [ , ] PASSWORD = { password | @password_variable } ]
[ [ , ] FORMAT | NOFORMAT ]
[ [ , ] { INIT | NOINIT } ]
[ [ , ] MEDIADESCRIPTION = { 'text' | @text_variable } ]
[ [ , ] MEDIANAME = { media_name | @media_name_variable } ]
[ [ , ] MEDIAPASSWORD = { mediapassword | @mediapassword_variable } ]
[ [ , ] NAME = { backup_set_name | @backup_set_name_var } ]
[ [ , ] { NOSKIP | SKIP } ]
[ [ , ] { NOREWIND | REWIND } ]
[ [ , ] { NOUNLOAD | UNLOAD } ]
[ [ , ] RESTART ]
[ [ , ] STATS [ = percentage ] ]
]
建立两个adoconnection,
1. ADOConnection1 连接你的业务数据库。
2. ADOConnection2 连接 MASTER 数据库。
3. ADOCommand1.Connection := ADOConnection2;
假设你的数据库名为: DataBaseName
Button.OnClick:
begin
ADOCommand1.CommandText := 'BACKUP DATABASE DataBaseName TO DISK = ' + #39 + 'C:\KKK.BAK' + #39;
ADOCommand1.Execute;
end;
这样就备份到本地机器上了
恢复如下:
Button.OnClick:
begin
ADOConnection1.Connected := False;//断开原来的连接
ADOCommand1.CommandText := 'ALTER DATABASE DataBaseName SET OFFLINE WITH ROLLBACK IMMEDIATE';
ADOCommand1.Execute;
ADOCommand1.CommandText := 'RESTORE DATABASE DataBaseName FROM DISK = ' + #39 + 'C:\KKK.BAK' + #39;
ADOCommand1.Execute;
ADOCommand1.CommandText := 'ALTER DATABASE DataBaseName SET ONLINE WITH ROLLBACK IMMEDIATE';
ADOCommand1.Execute;
ADOConnection1.Connected := True;//恢复原来的连接
end;