T-SQL语句实现数据库备份与还原功能

日期: 2008-07-23 作者:流浪浪 来源:TechTarget中国 英文

  我是使用T-SQL语句方式来完成数据库备份还原的功能的。


  需要指出下面这些存储过程是在网上搜索到的。谢谢代码的提供者。在此转载


  利用T-SQL语句,实现数据库的备份与还原的功能


  体现了SQL Server中的四个知识点:


  1. 获取SQL Server服务器上的默认目录


  2. 备份SQL语句的使用


  3. 恢复SQL语句的使用,同时考虑了强制恢复时关闭其他用户进程的处理


  4. 作业创建SQL语句的使用


  1.得到数据库的文件目录


  @dbname 指定要取得目录的数据库名


  如果指定的数据不存在,返回安装SQL时设置的默认数据目录


  如果指定NULL,则返回默认的SQL备份目录名


  调用示例







select 数据库文件目录=dbo.f_getdbpath(’tempdb’) 
  ,[默认SQL SERVER数据目录]=dbo.f_getdbpath(’’) 
  ,[默认SQL SERVER备份目录]=dbo.f_getdbpath(null) 





if exists (select * from dbo.sysobjects where id = object_id(N’[dbo].[f_getdbpath]’) and xtype in (N’FN’, N’IF’, N’TF’)) 
  drop function [dbo].[f_getdbpath] 
  GO 
  create function f_getdbpath(@dbname sysname) 
  returns nvarchar(260) 
  as 
  begin 
  declare @re nvarchar(260) 
  if @dbname is null or db_id(@dbname) is null 
  select @re=rtrim(reverse(filename)) from master..sysdatabases where name=’master’ 
  else 
  select @re=rtrim(reverse(filename)) from master..sysdatabases where name=@dbname 
  if @dbname is null 
  set @re=reverse(substring(@re,charindex(’’,@re)+5,260))+’BACKUP’ 
  else 
  set @re=reverse(substring(@re,charindex(’’,@re),260)) 
  return(@re) 
  end 
  go 

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

相关推荐