用Asp备份与恢复SQL Server 数据库

一个用asp备份与恢复SQL Server数据库的例子代码,希望对一些朋友有用。(注意:数据库使用中可能无法恢复) 


复制代码 代码如下:

<HTML>
<HEAD>
<TITLE>SQL Server 数据库的备份与恢复</TITLE>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</HEAD>
<BODY>
<form method="post" name=myform>
选择操作:<INPUT TYPE="radio" NAME="act" id="act_backup"  value="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="确定">

</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 = 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.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>"

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>"

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

%>

</BODY>

</HTML>

时间: 2006-08-15

ASP备份SQL Server数据库改进版

复制代码 代码如下: <form method="post" name="myform" action="?action=backupdatabase"> 选择操作:<INPUT TYPE="radio" NAME="act" id="act_backup"value="backup"><label for=act_backup>备

ASP语言实现对SQL SERVER数据库的操作

目前管理信息系统已从传统的客户机/服务器(C/S)模式转向了浏览器/服务器(B/S)模式,特别是微软公司推出它的新产品ASP语言之后,这种转变更加迅猛.管理信息系统的核心是对数据库进行包括添加.修改和查询等等操作,ASP提供的ADO数据库接口控件,使得程序员再也勿需编写复杂的CGI程序了,而只要用几句简单的语句即可实现以上操作.1.系统环境 PII 350,Ram 64M,WINNT Server 4.0, Service Pack4, IIS 4.0, SQL Server7.0. 2.系统功

ASP调用SQL SERVER存储程序

ASP调用SQL SERVER存储程序  出处   http://www.bmj2000.com/vb/techniccolumn/subDetail.asp?MainId=2&BoardId=asp&ItemId=%CA%FD%BE%DD%BF%E2%B2%D9%D7%F7&RecId=2216 调用数据库存储过程 <%     Set Dataconn = Server.CreateObject("ADODB.Connection")      '建立

ASP和SQL Server如何构建网页防火墙

ASP是Web上的客户机/服务器结构的中间层,虽然它使用脚本语言(Java Script,VB Script等)编写,程序代码在服务器上运行,在客户端仅可看到由ASP输出的动态HTML文件,但ASP仍具有某些漏洞,采取一定手段也可以看到ASP程序的源码.这时,通过ASP与SQL Server相结合,我们可以设计出简单.高效.可靠的应用程序. 为网页设置防火墙的主要目的是根据网页内容对不同来访者提供不同的服务,利用Java Script或VB Script,我们很容易做到这一点.但网页的源码在客户

sql server数据库中raiserror函数用法的详细介绍

sql server数据库中raiserror函数的用法 server数据库中raiserror的作用就和asp.NET中的throw new Exception一样,用于抛出一个异常或错误.这个错误可以被程序捕捉到. raiserror的常用格式如下: raiserror('错误的描述',错误的严重级别代码,错误的标识,错误的描述中的参数的值(这个可以是多个),一些其它参数),在官方上的格式描述如下: RAISERROR ( { msg_id | msg_str | @local_variab

Windows和Linux系统下perl连接SQL Server数据库的方法

本文将提供一些perl连接Microsoft SQL Server数据库的实例.perl脚本运行在Windows和Linux平台. Windows平台 如果在Windows平台下运行perl脚本,建议使用依赖DBI的两个模块包,提供标准的数据库接口模块. DBD::ODBC DBD::ADO 使用DBD::ODBC 如果选用DBD::ODBC,下面的实例代码将展示如何连接到SQL Server数据库: 复制代码 代码如下: use DBI;   # DBD::ODBC   my $dsn = '

SQL Server数据库中伪列及伪列的含义详解

SQL Server中的伪列 下午看QQ群有人在讨论(非聚集)索引的存储,说,对于聚集索引表,非聚集索引存储的是索引键值+聚集索引键值:对于非聚集索引表,索引存储的是索引键值+RowId,这应该是一个常识,对此不作具体详细阐述. 这里主要是提到的RowId引起了一点思考. 那么,这个RowId是个什么玩意?能不能更加直观一点来看看RowId的信息?代表什么含义?这个当然也是可以的. Oracle中的表中有一个伪列的概念,就是在查询表的时候加上select rowid,* from Table,会

详解SQL Server数据库状态和文件状态

数据库状态 (database states) 查询数据库的当前状态 : 1.查询所有数据库的状态 ,通过sys.databases目录视图的state_desc列 user master go select state_desc ,[name] from sys.databases go 2.查询指定数据库的状态,通过DATABASEPROPERTYEX函数的Status属性 select DATABASEPROPERTYEX('demoData','status') go 状态: ONLIN

SQL Server数据库入门学习总结

一图胜"十"言:SQL Server 数据库总结 一个大概的总结 经过一段时间的学习,也对数据库有了一些认识. 数据库基本是由表,关系,操作组成:对于初学者首先要学的: 1.数据库是如何存储数据的 表,约束,触发器 2.数据库是如何操作数据的 insert,update,delete T-sql 函数 存储过程 触发器 3.数据库是如何显示数据的 select SQLServer数据库学习总结 1.SQL基础 SQL Server2000安装.配置,服务器启动.停止,企业管理器.查询分