用asp的朋友,可以用下面的程式碼,實作mssql資料庫的備份還原運算<form method=post name=myform action=?action=backupdatabase>
選擇操作:
<input type=radio name=act id=act_backupvalue=backup>
<label for=act_backup>備份</label>
<input type=radio name=act id=act_restore value=restore>
<label for=act_restore>還原</label>
<br>
資料庫名稱:
<input type=text name=databasename value=<%=request(databasename)%>>
<br>
文件路徑:
<input type=text name=bak_file value=c:/$1.bak>
(備份或還原的檔案路徑)<br>
<input type=submit value=確定id=submit1 name=submit1>
</form>
<%
'sql server 資料庫的備份與復原!
if request(action)=backupdatabase then
dim sqlserver,sqlname,sqlpassword,sqllogintimeout,databasename,bak_file,act
'************************************************* *************************
sqlserver = 127.0.0.1
sqlname = sa
sqlpassword =111
sqllogintimeout = 15
databasename = trim(request(databasename))
bak_file = trim(request(bak_file))
bak_file = replace(bak_file,$1,databasename)
act = lcase(request(act))
'************************************************* *************************
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.action = 0
bak.initialize = 1
'bak.replace = true
bak.files=bak_file
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>
end if
if 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>
response.write err.description&</font>
end if
rest.sqlrestore srv
response.write <font color=green>恢復成功!</font>
else
response.write <font color=red>沒有選擇動作</font>
end if
end if
end if
%>