当前位置: 首页 > 图文教程 > 数据库 > MSSQL > Asp备份与恢复SQL Server

MSSQL
SQL Server TEXT、NTEXT字段拆分的问题
SQL Server事务日志的几个常用操作
SQL Server不存在或拒绝访问故障的排除
动态创建MSSQL数据库表存储过程
教你如何在SQL Server计算列和平均值
如何应用SQL Server中的DBCC避免堵塞
SQLServer2000分布式事务错误解决方法
通用SQL数据库查询语句精华使用简介
利用typeperf工具收集SQL Server性能数据
SQL 2008 FileStream数据类型
自定义用于ASP Web站点的 SQL 7.0 数据库
SQL server 2005安装问题大全
利用"SQL"语句自动生成序号的两种方式
SQL Server数据库管理员必备的DBCC命令
讲解在SQL Server 2005中实现异步触发器架构
SQL Server 2008的新特性概述:集成服务
SQL Server 2008关系数据库引擎的新增功能
浅析SQL 2008的Change Data Capture功能
在IIS中为SQL Server 2008配置报表服务
SQL Server 2008中报表服务详解

MSSQL 中的 Asp备份与恢复SQL Server


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-30   浏览: 70 ::
收藏到网摘: n/a

<HTML>
<HEAD>
<TITLE>数据库操作</TITLE>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</HEAD>

<BODY>
<form method="post" name=myform>
<%if action="restore" then%><INPUT TYPE="hidden" name="action" value="restore">准备恢复数据库。。。
<%elseif action="backup" then%><INPUT TYPE="hidden" name="action" value="backup">准备备份数据库。。。<%else%>
选择操作:
<INPUT TYPE="radio" name="action" id="act_backup"  value="backup"><label for=act_backup>备份</label> 
<INPUT TYPE="radio" name="action" id="act_restore" value="restore"><label for=act_restore>恢复</label><%end if%>
<br>数据库名:<INPUT TYPE="text" name="databasename" value="50forum">
<br>文件路径:<INPUT TYPE="text" name="bak_file" value="http://blog.im286.com/50forum.bak">(备份或恢复的文件路径)<br>
<input type="submit" value="确定">
</form>
<%
'SQL Server 数据库的备份与恢复!
'海娃
'http://www.51windows.Net
dim sqlserver,sqlname,sqlpassword,sqlLoginTimeout,databasename,bak_file,act
sqlserver = "localhost" 'sql服务器
sqlname = "sa"   '用户名
sqlpassword = "sa"  '密码
sqlLoginTimeout = 15 '登陆超时
databasename = trim(request("databasename"))
bak_file = trim(request("bak_file"))
bak_file = Server.MapPath("backup/"&bak_file)
act = lcase(request("action"))

if databasename = "" then
 response.write "input database name"
else
 if act = "backup" then
  Set srv = Server.CreateObject("SQLDMO.SQLServer")
  srv.LoginTimeout  = sqlLoginTimeout
  srv.Connect sqlserver,sqlname, sqlpassword
  Set bak     = Server.CreateObject("SQLDMO.Backup")
  bak.Database   = databasename
  bak.Devices    = Files
  bak.Files    = bak_file
  bak.Action    = 0
  bak.Initialize   = 1
  'bak.ReplaceDatabase  = True
  bak.SQLBackup srv
  if err.number>0 then
   response.write err.number&"<font color=red><br>"
   response.write err.description&"</font>"
  end if
  Response.write "<font color=green>备份成功!</font>"
  srv.disconnect
  Set srv = nothing
  Set bak = nothing
 elseif act = "restore" then
  '恢复时要在没有使用数据库时进行!
  Set srv=Server.CreateObject("SQLDMO.SQLServer")
  srv.LoginTimeout  = sqlLoginTimeout
  srv.Connect sqlserver,sqlname, sqlpassword
  Set rest    = Server.CreateObject("SQLDMO.Restore")
  rest.Action    = 0 ' full db restore
  rest.Database   = databasename
  rest.Devices   = Files
  rest.Files    = bak_file
  rest.ReplaceDatabase = True 'Force restore over existing database
  if err.number>0 then
   response.write err.number&"<font color=red><br>&q