帮帮忙啊。一个用ASP恢复SQLServer数据的问题
代码是这么写的:
if request("action")="backup" then
dim rs,sql
set rs=CreateObject("ADODB.RecordSet")
sql = "EXEC sp_addumpdevice 'disk','SUNBAK','" + CStr(server.MapPath("data\bak\"+ CStr(Date()) +".DAT")) + "'"
rs.open sql,conn,1,1
rs.close
sql = "BACKUP DATABASE " + SQLDataBaseName + " TO SUNBAK"
rs.open sql,conn,1,1
rs.close
sql = "EXEC sp_dropdevice 'SUNBAK'"
rs.open sql,conn,1,1
rs.close
set rs=nothing
%>
<!--#include file="inc/top.asp"-->
<p align="center">备份成功,文件名为<%= CStr(Date())%>.DAT,您可以将该文件下载到本地保存。<br><br>
<a href="/data/bak/<%= CStr(Date())%>.DAT">下载备份文件</a><br><br>
<a href="index2.asp">返回</a></p>
<!--#include file="inc/down.asp"-->
<%
elseif request("action")="restore" then
filename = CStr(server.MapPath("data\bak\"+ CStr(request("bakpath"))))
if USEFSO = 1 then
dim fs
set fs = Server.CreateObject("Scripting.FileSystemObject")
if fs.FileExists(filename) = false then
Response.Redirect ("error.asp?errorid=404")
end if
end if
set rs=CreateObject("ADODB.RecordSet")
sql = "EXEC sp_addumpdevice 'disk','SUNBAK','" + filename + "'"
rs.open sql,conn,1,1
rs.close
sql = "RESTORE DATABASE " + SQLDataBaseName + " FROM SUNBAK"
rs.open sql,conn,1,1
rs.close
sql = "EXEC sp_dropdevice 'SUNBAK'"
rs.open sql,conn,1,1
rs.close
set rs=nothing
%>
<!--#include file="inc/top.asp"-->
<p align="center">恢复成功,请重新登陆本系统!<br><br>
<a href="logout.asp">返回</a></p>
<!--#include file="inc/down.asp"-->
<%
else
......
end if
但是备份的功能可以实现,恢复的功能却不能实现。为什么啊?