Видел резервное копирование и восстановление базы данных. Большая часть этого делается с использованием компонентов. Фактически, это можно сделать с помощью оператора sql.
Из-за нехватки времени параметры не проверялись, а интерфейс украшался. Код предназначен только для справки.
Всего 4 файла: Адрес загрузки: функция Rec(rs,sql)
set rs = server.CreateObject("ADODB.Recordset")
rs.Activeconnection = подключение
rs.Источник = sql
rs.CursorType = 0
rs.Cursorlocation = 3
rs.LockType = 1
rs.Open
если rs.eof и rs.bof, то
запись = ложь
еще
запись = истина
конец, если
конечная функция
функция cmd (sql)
тусклый cmd1
set cmd1 = server.CreateObject("ADODB.Command")
cmd1.ActiveConnection = подключение
cmd1.CommandText = sql
cmd1.CommandType = 1
cmd1.CommandTimeout = 0
cmd1.Prepared = правда
cmd1.Выполнить()
конечная функция
функция cdb(rs)
rs.close()
установить rs=ничего
конечная функция
%>
dev.asp
<!--#include file="conn.asp"-->
<%
если запрос("AddDev") <> "" тогда
sql="выберите имя, phyname из master..sysdevices, где status=16 и name="&request("devname")&"'"
запись chk, SQL
если chk.eof и chk.bof, то
sql = "sp_addumpdevice 'disk','"&request("devname")&"','"&request("phyname")&"'"
cmdsql
ответ. Напишите "<script Language=javascript>window.location=reload;</script>"
еще
response.Write "<script Language=javascript>alert('Устройство уже существует в базе данных"&request("devname")&"Device!');window.location='cmd.asp';</script>"
конец, если
конец, если
если запрос("deldev") <> "" тогда
sql = "sp_dropdevice '"&request("имя_разработчика")&"'"
cmdsql
ответ. Напишите "<script Language=javascript>window.location=reload;</script>"
конец, если
Rec li, «выберите имя, phyname из master..sysdevices, где статус = 16»
если li.eof и li.bof, то
ответ. Напишите «<font color=#ff0000>Пожалуйста, создайте новое устройство резервного копирования для резервного копирования и восстановления базы данных</font>»
еще
%><style type="text/css">
<!--
тело {
поле слева: 0 пикселей;
поле-верх: 0 пикселей;
}
-->
</стиль>
<table width="60%" border="0" cellpacing="0">
<тр>
<td width="29%">Имя:</td>
<td width="71%">Позиция:</td>
</tr>
<%
я = 0
пока не li.eof
я=я+1
%>
<тр>
<td><%=li(0)%></td>
<td><%=li(1)%> <a href='dev.asp?DelDev=1&devname=<%=li(0)%>'>Удалить это устройство</a></td>
</tr>
<%
li.movenext
идти
ответ.Напишите "<script Language=javascript>top.document.all.dev.height='"&(i+1)*25&"';</script>"
cdbli
%>
</таблица>
<%
конец, если
%>
default.asp
< %@LANGUAGE="VBSCRIPT " CODEPAGE="936"%>
<!--#include file="conn.asp"-->
<%
'************************************************
'Резервное копирование и восстановление базы данных
'Программирование: Magic Yang (MagicYang.CN)
'Дата завершения: 11 апреля 2004 г.
'Пояснение: Из-за нехватки времени безопасность данных не была проверена.
«Пожалуйста, проверьте данные при подаче заявки, чтобы обеспечить безопасность.
'QQ: 1168064 Приглашаем всех общаться друг с другом
'************************************************
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" " http://www.w3.org/TR/html4/loose.dtd ">
<html>
<голова>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>Резервное копирование и восстановление базы данных</title>
</head>
<тело>
<%
%>
<table width="80%" border="0" align="center">
<тр>
<td width="21%" valign="top">Устройство базы данных:</td>
<td width="79%">
<iframe name="dev" src="dev.asp" width="100%" height="200"frameborder="0" прокрутка="no"></iframe>
</td>
</tr>
<тр>
<td>Добавить устройство:</td>
<td>Имя устройства:
<input name="devname" type="text" id="devname" size="10" maxlength="10"></td>
</tr>
<тр>
<td> </td>
<td>Путь к файлу:
<input name="phyname" type="text" id="phyname" size="20" maxlength="50">
<input type="button" value="Добавить устройство" onClick="document.all.dev.src='dev.asp?AddDev=1&devname='+document.all.devname.value+'&phyname='+document.all .phyname.value;"></td>
</tr>
<тр>
<td valign="top">Резервное копирование/восстановление:</td>
<тд>
Имя базы данных:
<%
Rec li,"выберите имя из базы данных master..sys, где status=16"
%>
<select name="b_data">
<%
пока не li.eof
ответ. Напишите "<option value="&li(0)&">"&li(0)&"</option>"
li.movenext
идти
cdbli
%>
</выбрать><br>
Резервное копирование на устройство: <%
Rec li, «выберите имя, phyname из master..sysdevices, где статус = 16»
%>
<select name="b_dev">
<%
пока не li.eof
ответ. Напишите "<option value="&li(0)&">"&li(0)&"(file:"&li(1)&")</option>"
li.movenext
идти
cdbli
%>
</выбрать><br>
<input name="Button" type="button" value="Резервное копирование базы данных" onClick="window.location='cmd.asp?action=backup&database='+document.all.b_data.value+'&dev='+document. all.b_dev.value;">
<input name="Button" type="button" value="Восстановить базу данных" onClick="window.location='cmd.asp?action=RESTORE&database='+document.all.b_data.value+'&dev='+document. all.b_dev.value;"> </td>
</tr>
<тр>
<td> </td>
<td> </td>
</tr>
</таблица>
</тело>
</html>
cmd.asp
<!--#include file="conn.asp"-->
<%
при ошибке продолжить дальше
если запрос("действие") <> "" тогда
если запрос("действие")="резервное копирование" тогда
sql="РЕЗЕРВНАЯ БАЗА ДАННЫХ"&request("база данных")&" To "& request("dev")
cmdsql
если номер ошибки > 0, то
response.Write "<script Language=javascript>alert('database"&request("database")&"Ошибка резервного копирования!');window.location='default.asp';</script>"
еще
response.Write "<script Language=javascript>alert('Database"&request("database")&"Резервное копирование выполнено успешно!');window.location='default.asp';</script>"
конец, если
еще
sql = "ВОССТАНОВИТЬ БАЗА ДАННЫХ" &request("база данных")&" From "& request("dev")
cmdsql
если номер ошибки > 0, то
response.Write "<script Language=javascript>alert('Database"&request("database")&"Ошибка восстановления!');window.location='default.asp';</script>"
еще
response.Write "<script Language=javascript>alert('database"&request("database")&"Успешно восстановлено!');window.location='default.asp';</script>"
конец, если
конец, если
конец, если
%>
Надеюсь, что все смогут общаться друг с другом! Вопрос: 1168064