网站首页 > 书籍教程 > ASP教程 > 无组件的数据库的备份与还原

无组件的数据库的备份与还原

  • 作者:互联网
  • 时间:2009-06-23 17:05:34

看过数据库的备份与还原。大多数都是用组件来完成的。其实可通过sql语句来完成。
由于时间关系,未对参数进行验证和界面美化。代码仅供参考。
共计4个文件:下载地址:Pr***der=SQLOLEDB.1;Persist Security Info=false;Se***r=127.0.0.1;UID=sa;pw***ww.zhi.net;database=master"
function rec(rs,sql)
set rs = se***r.CreateObject("AD***.Recordset")
rs***tiveconnection = conn
rs***urce = sql
rs***rsorType = 0
rs***rsorlocation = 3
rs***ckType = 1
rs.Open
if rs.eof and rs.bof then
rec= false
else
rec= true
end if
end function
function cmd(sql)
dim cmd1
set cmd1 = se***r.CreateObject("AD***.Command")
cm***ActiveConnection = conn
cm***CommandText = sql
cm***CommandType = 1
cm***CommandTimeout = 0
cm***Prepared = true
cm***Execute()
end function
function cdb(rs)
rs.close()
set rs=nothing
end function
%>
dev.asp

 <%
 if request("AddDev") <> "" then
sql="select name,phyname from ma***r..sysdevices where status=16 and name='"&request("devname")&"'"
rec chk,sql
if chk.eof and chk.bof then
sql = "sp_addumpdevice 'disk','"&request("devname")&"','"&request("phyname")&"'"
cmd sql
re***nse.Write ""
else
re***nse.Write ""
end if
end if
if request("deldev") <> "" then
sql = "sp_dropdevice '"&request("devname")&"'"
cmd sql
re***nse.Write ""
end if
 rec li,"select name,phyname from ma***r..sysdevices where status=16"
 if li.eof and li.bof then
 re***nse.Write "请新建备份设备用来备份还原数据库"
 else
 %>

 
   
   
 
  <%
  i=0
  while not li.eof
  i=i+1
  %>
 
   
   
 
  <%
  li***venext
  wend
  re***nse.Write ""
   cdb li
  %>
名称:位置:
<%=li(0)%><%=li(1)%> 删除此设备

<%
end if
%>
de***lt.asp
<
%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>

<%
'*************************************************
'数据库备份与还原
'编        程:魔术师·杨(Ma***Yang.CN)
'完成日期:2004-4-11
'说明:由于时间关系,未对数据做安全性验证。
'应用时请对数据进行验证,确保安全。
'QQ:1168064  欢迎大家互相交流
'*************************************************
%>
http://ww***.org/TR/html4/loose.dtd">http://ww***.org/TR/html4/loose.dtd">



数据库的备份与还原


<%

%>

 
   
   
 
 
   
   
 
 
   
   
 
 
   
   
 
 
   
   
 
数据库设备:

 
添加设备:设备名称:
   
 文件路径:
   
    do***ent.all.dev.src='de***sp?AddDev=1&devname='+do***ent.all.devname.value+'&phyname='+do***ent.all.phyname.value;">
备份/还原:
  数据库名称:
  <%
 rec li,"select name from ma***r..sysdatabases where status=16"
 
 %>
 

 备份到设备:<%
 rec li,"select name,phyname from ma***r..sysdevices where status=16"
  %>
 

   wi***w.location='cm***sp?action=backup&database='+do***ent.all.b_data.value+'&dev='+do***ent.all.b_dev.value;">
    
   wi***w.location='cm***sp?action=RESTORE&database='+do***ent.all.b_data.value+'&dev='+do***ent.all.b_dev.value;">
  



cmd.asp

<%
on error resume next
if request("action") <> "" then
if request("action")="backup" then
sql ="BACKUP DATABASE "&request("database")&" To "& request("dev")
cmd sql
if er***umber > 0 then
re***nse.Write ""
else
re***nse.Write ""
end if
else
sql ="RESTORE DATABASE "&request("database")&" From "& request("dev")
cmd sql
if er***umber > 0 then
re***nse.Write ""
else
re***nse.Write ""
end if
end if
end if
%>


希望大家互相交流!QQ:1168064