2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > ASP.NET恢复备份Sql server

ASP.NET恢复备份Sql server

时间:2021-08-18 14:49:23

相关推荐

ASP.NET恢复备份Sql server

数据库|mysql教程

quot,gt,lt,DropDownList,string

数据库-mysql教程

前台代码:

66874电子书源码,vscode怎么查看风格,ubuntu终止代理,tomcat有war包,sqlite数据库连接方法,用爬虫爬去知网论文犯法吗,php二维数组比较,献县seo优化贵不贵,网站目录下载工具,dreamweaver动漫模板lzw

cpa织梦源码,ubuntu用命令解压,tomcat9 编译安装,竹笋爬虫寓意,window下php环境,泛目录最新版本seo推广lzw

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "”>

qq领取流量钓鱼源码,vscode快捷键关页面,macos与ubuntu,tomcat9权限,爬虫编程考试,php统计目录大小,前端seo优化推广面试题lzw

<html xmlns="”>

后台:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Data.SqlClient;

using System.IO;

using System.Data;

using System.Diagnostics;

namespace SysSourceMgmt

{

public partial class SqlDbMgmt : System.Web.UI.Page

{

protected void Page_Load(object sender, EventArgs e)

{

if (!IsPostBack)

{

try

{

string SqlStr1 = “Server=(local);DataBase=master;Uid=sa;Pwd=”;

string SqlStr2 = “Exec sp_helpdb”;

SqlConnection con = new SqlConnection(SqlStr1);

con.Open();

SqlCommand com = new SqlCommand(SqlStr2, con);

SqlDataReader dr = com.ExecuteReader();

this.DropDownList1.DataSource = dr;

this.DropDownList1.DataTextField = “name”;

this.DropDownList1.DataBind();

dr.Close();

con.Close();

SqlStr1 = “Server=(local);DataBase=master;Uid=sa;Pwd=”;

SqlStr2 = “Exec sp_helpdb”;

con = new SqlConnection(SqlStr1);

con.Open();

com = new SqlCommand(SqlStr2, con);

dr = com.ExecuteReader();

this.DropDownList1.DataSource = dr;

this.DropDownList1.DataTextField = “name”;

this.DropDownList1.DataBind();

dr.Close();

con.Close();

}

catch (Exception)

{

}

}

}

protected void Button1_Click(object sender, EventArgs e)

{

string dbName = string.Empty;

if (DropDownList1.Items.Count != 0)

{

dbName = DropDownList1.SelectedValue.Trim();

}

else

{

dbName = txtDbName.Text.Trim();

}

string SqlStr1 = “Data Source=.\sqlexpress;Initial Catalog=” + dbName + “‘;Integrated Security=True”;

string SqlStr2 = “backup database ” + dbName + ” to disk=” + this.TextBox1.Text.Trim() + “.bak”;

SqlConnection con = new SqlConnection(SqlStr1);

con.Open();

try

{

if (File.Exists(this.TextBox1.Text.Trim()))

{

Response.Write(“alert(‘此文件已存在,请从新输入!’);location=’Default.aspx”);

return;

}

SqlCommand com = new SqlCommand(SqlStr2, con);

com.ExecuteNonQuery();

Response.Write(“alert(‘备份数据成功!’);”);

}

catch (Exception error)

{

Response.Write(error.Message);

Response.Write(“alert(‘备份数据失败!’)”);

}

finally

{

con.Close();

}

}

protected void Button2_Click(object sender, EventArgs e)

{

string path = this.FileUpload1.PostedFile.FileName; //获得备份路径及数据库名称

string dbName = string.Empty;

if (DropDownList1.Items.Count != 0)

{

dbName = DropDownList1.SelectedValue.Trim();

}

else

{

dbName = txtDbName.Text.Trim();

}

string SqlStr1 = “Data Source=.\sqlexpress;Initial Catalog=” + dbName + “‘;Integrated Security=True”;

string SqlStr2 = @”use master restore database ” + dbName + ” from disk=” + path + “‘”;

SqlConnection con = new SqlConnection(SqlStr1);

con.Open();

try

{

SqlCommand com = new SqlCommand(SqlStr2, con);

com.ExecuteNonQuery();

Response.Write(“alert(‘还原数据成功!’);”);

}

catch (Exception error)

{

Response.Write(error.Message);

Response.Write(“alert(‘还原数据失败!’)”);

txtDbName.Text = SqlStr2;

}

finally

{

con.Close();

}

}

///

/// 待还原的数据库名称

/// 带还原的备份文件的完全路径

/// 恢复数据库失败的信息

/// 是否强制还原(恢复),如果为TRUE,则exec killspid ‘数据库名’ 结束此数据库的进程,这样才能还原数据库

///

public bool RestoreDataBase(string databasename, string databasefile, ref string returnMessage, bool forceRestore, SqlConnection conn)

{

bool success = true;

string path = databasefile;

string dbname = databasename;

string restoreSql = “use master;”;

if (forceRestore)//如果强制回复

restoreSql += string.Format(“use master exec killspid ‘{0}’;”, databasename);

restoreSql += “restore database @dbname from disk = @path;”;

SqlCommand myCommand = new SqlCommand(restoreSql, conn);

myCommand.Parameters.Add(“@dbname”, SqlDbType.Char);

myCommand.Parameters[“@dbname”].Value = dbname;

myCommand.Parameters.Add(“@path”, SqlDbType.Char);

myCommand.Parameters[“@path”].Value = path;

Response.Write(restoreSql);

try

{

myCommand.Connection.Open();

myCommand.ExecuteNonQuery();

returnMessage = “还原成功”;

}

catch (Exception ex)

{

returnMessage = ex.Message;

success = false;

}

finally

{

myCommand.Connection.Close();

}

return success;

}

protected void Button3_Click(object sender, EventArgs e)

{

string path = this.FileUpload1.PostedFile.FileName; //获得备份路径及数据库名称

string dbName = string.Empty;

if (DropDownList1.Items.Count != 0)

{

dbName = DropDownList1.SelectedValue.Trim();

}

else

{

dbName = txtDbName.Text.Trim();

}

string returnMessage = string.Empty;

string SqlStr1 = “Data Source=.\sqlexpress;Initial Catalog=” + dbName + “‘;Integrated Security=True”;

SqlConnection con = new SqlConnection(SqlStr1);

RestoreDataBase(txtDbName.Text, path, ref returnMessage, true,con);

Response.Write(returnMessage);

}

}

}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。