选择显示字体大小

sql server2000备份和恢复存储过程

/*备份数据库的过程*/
if exists(
 select * from sysobjects
  where name=’pr_backup_db’ and xtype=’p’
          )
begin
 drop proc pr_backup_db
end
go
create proc pr_backup_db
@flag varchar(20) out,
@backup_db_name varchar(128),
@filename varchar(1000)  --路径+文件名字
as
declare @sql nvarchar(4000),@par nvarchar(1000)
if not exists(
 select * from master..sysdatabases
  where name=@backup_db_name
  )
begin
 select @flag=’db not exist’  /*数据库不存在*/
 return
end
else
begin
 if right(@filename,1)<>’\’ and charindex(’\’,@filename)<>0
 begin
  select @par=’@filename varchar(1000)’
  select @sql=’backup database ’+@backup_db_name+’ to disk=@filename with init’
  execute sp_executesql @sql,@par,@filename
  select @flag=’ok’ 
  return
 end
 else
 begin
  select @flag=’file type error’  /*参数@filename输入格式错误*/
  return
 end
end
go
说明:pr_backup_db过程是备份你的数据库
 
 
/*创建函数,得到文件得路径*/
if exists(
 select * from sysobjects
  where name=’fn_getfilepath’ and xtype=’fn’
        )
begin
 drop function fn_getfilepath
end
go
create function fn_getfilepath(@filename nvarchar(260))
returns nvarchar(260)   
as
begin
 declare @file_path nvarchar(260)
 declare @filename_reverse nvarchar(260)
 select @filename_reverse=reverse(@filename)
 select @file_path=substring(@filename,1,len(@filename)+1-charindex(’\’,@filename_reverse))
 return @file_path
end

go

/*恢复数据库的过程*/
if exists(
 select * from sysobjects
  where name=’pr_restore_db’ and xtype=’p’
          )
begin
 drop proc pr_restore_db
end
go
create  proc pr_restore_db    
@flag varchar(20) out,    /*过程运行的状态标志,是输入参数*/      
@restore_db_name nvarchar(128),  /*要恢复的数据名字*/
@filename nvarchar(260)         /*备份文件存放的路径+备份文件名字*/
as
declare @proc_result tinyint  /*返回系统存储过程xp_cmdshell运行结果*/
declare @loop_time smallint  /*循环次数*/
declare @max_ids smallint    /*@tem表的ids列最大数*/
declare @file_bak_path nvarchar(260)  /*原数据库存放路径*/
declare @flag_file bit   /*文件存放标志*/
declare @master_path nvarchar(260)  /*数据库master文件路径*/
declare @sql nvarchar(4000),@par nvarchar(1000)
declare @sql_sub nvarchar(4000)
declare @sql_cmd nvarchar(100) 
declare @sql_kill nvarchar(100) 
/*
判断参数@filename文件格式合法性,以防止用户输入类似d: 或者 c:\a\ 等非法文件名
参数@filename里面必须有’\’并且不以’\’结尾
*/
if right(@filename,1)<>’\’ and charindex(’\’,@filename)<>0
begin 
 select @sql_cmd=’dir ’+@filename
 exec @proc_result = master..xp_cmdshell @sql_cmd,no_output
 if (@proc_result<>0)  /*系统存储过程xp_cmdshell返回代码值:0(成功)或1(失败)*/
 begin
  select @flag=’not exist’   /*备份文件不存在*/
  return  /*退出过程*/
 end
 /*创建临时表,保存由备份集内包含的数据库和日志文件列表组成的结果集*/
 create table #tem(
     logicalname nvarchar(128), /*文件的逻辑名称*/
     physicalname nvarchar(260) , /*文件的物理名称或操作系统名称*/
     type char(1),  /*数据文件 (d) 或日志文件 (l)*/
     filegroupname nvarchar(128), /*包含文件的文件组名称*/
     [size] numeric(20,0),  /*当前大小(以字节为单位)*/
     [maxsize] numeric(20,0)  /*允许的最大大小(以字节为单位)*/
   )

本新闻共2


 


关键字 本文所属关键字

相关 与本文相关文章

分类 所有文章关键字导航

源码编程相关

Java   Asp   PHP   .Net   XML   C/C++   CGI   VB   Jsp   J2ee   J2se   J2me   EJB   Servlet   Tomcat   Resin   Struts   Weblogic   Eclipse   ANT   GUI   JMS   Web servise   IDEA   Webphere   Hibernate   Spring   Jboss   Applet   Swing   Socket   Javamail   Perl   Ajax   P2P   安全   模式   框架   测试   开源   游戏

SQL数据库相关

My-SQL   Ms-SQL   Access   DB2   Oracle   Sybase   SQLserver   索引   存储过程   加密   数据库   分页   视图  

手机无线相关

3G   Wap   CDMA   GRPS   GSM   IVR   彩信   短信   无线   增值业务

网页设计制作相关

HTML   CSS   网页配色   网页特效   Javascript   VBscript   Dreamweaver   Frontpage   JS   Web   网站设计

网站建设推广相关

建站经验   网站优化   网站排名   推广   Alexa

操作系统/服务器相关

Windows XP   Windows 2000   Windows 2003   Windows Me   Windows 9.x   Linux   UNIX   注册表   操作系统   服务器   应用服务器

图形图像多媒体相关

Photoshop   Fireworks   Flash   Coreldraw   Illustrator   Freehand   Photoimpact   多媒体   图形图像

标准 网站致力的规范

Valid CSS!

无不良内容,无不良广告,无恶意代码

Valid XHTML 1.0 Transitional

creativecommons