最近我们系统老大叫用delphi我写一个数据备份软件,主要做平时的数据维护和备份工作。本人没
写过,不知哪位大哥有写过,能传点经验给小弟吗?给点列子看看。。
写过,不知哪位大哥有写过,能传点经验给小弟吗?给点列子看看。。
解决方案 »
- Office2007风格的工具窗口(不是工具栏)
- 请问如何用Adoconnection 连接加密码保护的Excel呢?
- delphi连接SQL SERVER问题,帮助我!
- 我是才鸟我怕谁?
- <<急急急>>我用BDE连接SQL SERVER 7为什么启动速度很慢。刷新也很慢。(win98+delphi6)
- 收到了BORLAND寄来的奖品,送分庆祝,请斑竹不要介意!
- 关于INSERT问题
- 关于语言的一些问题?
- 请教高手:如何取得TRICHEDIT当前行再屏幕中的位置
- 哪有免费的时尚编程百例系列电子书下载?
- 用BatchMove组件备份数据后不能进行restore操作
- 怎样把一个数据库备份文件以新的数据库名安装在SQL SERVER里?
如果是的话,
create procedure up_backupdb(@dbname varchar(30),@bk_file varchar(99))
as
begin
declare @sql varchar(1999)
select @sql='backup database '+@dbname+' to disk file='+@bk_file
exec(@sql)
endcreate procedure up_restoredb(@dbname varchar(30),@bk_file varchar(99))
as
begin
declare @sql varchar(1999)
select @sql='restore database '+@dbname+' from disk file='+@bk_file
exec(@sql)
end
前面是备份,后面是恢复。
'restore database databasename from disk='要恢复的地方'+'另外的参数'备份
backup database databasename to disk='要存的地方'+'另外的参数'
你可以自己找SQL的帮助,我以前就是那样做的
可以用
select Count(*) from sysprocesses
where dbid in (select dbid from sysdatabases where name='数据库名称')
参数:databasename数据库名,filename数据库备份文件名
////////////////////////////////////////////////////////
function sqlrestore(databasename,filename:string):boolean;
begin
if (databasename<>'') and (filename<>'') then
begin
try
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.CommandTimeout:=120;
adoquery1.SQL.Add('use master');
adoquery1.SQL.Add('alter database '+databasename+' set offline WITH ROLLBACK IMMEDIATE');
adoquery1.SQL.Add('restore database '+databasename+' from disk='''+filename+''''+' with REPLACE ');
adoquery1.SQL.Add('alter database '+databasename+' set online with rollback immediate');
adoquery1.ExecSQL;
result:=true;
except
result:=false;
exit;
end;
end;
end;////////////////////////////////////////////////////////
功能:SQL数据库备份
参数:databasename数据库名,savepath数据库备份文件名
////////////////////////////////////////////////////////
function TForm7.sqlback(databasename,savepath:string):boolean;
begin
if (databasename<>'')and (savepath<>'') then
begin
try
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('backup database '+databasename+ ' to disk='''+savepath+'''');
adoquery1.ExecSQL;
result:=true;
except
result:=false;
exit;
end;
end;
end;