asp.net中在线备份和恢复数据库问题. 我数据库路径是database\orderfood.mdf. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 BACKUP DATABASE sss TO DISK='c:/DataBase/orderfood.mdf' RESTORE DATABASE sss TO DISK='c:/DataBase/orderfood.mdf' <HTML> <HEAD> <title>获取服务器端数据库列表示例</title> <% @Import Namespace="System.Data" %> <% @Import Namespace="System.Data.SqlClient" %> <script language="C#" runat="server">// 注意本节的数据库连接字符串string ConnStr = System.Configuration.ConfigurationSettings.AppSettings["SQLCONNECTIONSTRING"];void Page_Load(object sender, System.EventArgs e){if(!IsPostBack){// 创建连接及执行数据库操作string db_query = "sp_helpdb";SqlCommand myCommand = new SqlCommand(db_query, new SqlConnection(ConnStr));myCommand.Connection.Open();SqlDataReader dr = myCommand.ExecuteReader();// 将数据库列表绑定到下拉列表控件(DropDownList)dbDropDownList.DataSource = dr;dbDropDownList.DataTextField = "name";dbDropDownList.DataBind();//关闭DataReader对象和数据库连接dr.Close();myCommand.Connection.Close();}}void dbDropDownList_SelectedIndexChanged(object sender, System.EventArgs e){pathTextBox.Text = @"C:\BACKUP\"+dbDropDownList.SelectedValue+".bak";}void backupButton_Click(object sender, System.EventArgs e){string path = pathTextBox.Text;string dbname = dbDropDownList.SelectedValue;string backupSql = "use master;";backupSql = "backup database @dbname to disk = @path;";SqlCommand myCommand = new SqlCommand(backupSql, new SqlConnection(ConnStr));myCommand.Parameters.Add("@dbname", SqlDbType.Char);myCommand.Parameters["@dbname"].Value = dbname;myCommand.Parameters.Add("@path", SqlDbType.Char);myCommand.Parameters["@path"].Value = path;try{myCommand.Connection.Open();myCommand.ExecuteNonQuery();infoLabel.Text = "备份成功";}catch(Exception ex){infoLabel.Text = "备份失败<br/>"+ex.ToString();}finally{myCommand.Connection.Close();}}void restoreButton_Click(object sender, System.EventArgs e){string path = pathTextBox.Text;string dbname = dbDropDownList.SelectedValue;string restoreSql = "use master;";restoreSql = "restore database @dbname from disk = @path;";SqlCommand myCommand = new SqlCommand(restoreSql, new SqlConnection(ConnStr));myCommand.Parameters.Add("@dbname", SqlDbType.Char);myCommand.Parameters["@dbname"].Value = dbname;myCommand.Parameters.Add("@path", SqlDbType.Char);myCommand.Parameters["@path"].Value = path;try{myCommand.Connection.Open();myCommand.ExecuteNonQuery();infoLabel.Text = "恢复成功";}catch(Exception ex){infoLabel.Text = "恢复失败<br/>"+ ex.ToString();}finally{myCommand.Connection.Close();}} </script> </HEAD> <body> <form id="Form1" method="post" runat="server"> <h3>获取服务器端数据库列表示例</h3> 数据库列表: <asp:dropdownlist id="dbDropDownList" runat="server" AutoPostBack="True" OnSelectedIndexChanged="dbDropDownList_SelectedIndexChanged"> <asp:ListItem Value="employee">employee</asp:ListItem> </asp:dropdownlist> <br> <br> 请输入备份目录及备份文件名: <asp:textbox id="pathTextBox" runat="server" Width="224px">C:\BACKUP\Northwind.bak</asp:textbox>(目录必须存在) <br> <br> <asp:button id="backupButton" runat="server" Font-Size="9pt" Text="备份数据库" OnClick="backupButton_Click"></asp:button> <asp:button id="restoreButton" runat="server" Font-Size="9pt" Text="恢复数据库" OnClick="restoreButton_Click"></asp:button> <br> <br> <asp:Label id="infoLabel" runat="server"></asp:Label> </form> </body></HTML> 用SQLDMO组件也可以实现数据库的备份和还原,用法你可以在百度上查下,很好用的! 1.关键是写备份和恢复数据库的sql命令,执行方式与其他数据库交互方式(比如添加删除数据)一样。2.拥有数据库备份和恢复的权限。登录数据库的帐号必须拥有相应的权限,一般情况是创建两个数据库登录帐号(一个帐号的权限是普通的增加删除数据,一个帐号的权限是备份恢复数据),然后用这两个不同的登录帐号创建两个不同的数据库链接,根据不同的情况使用不同的数据库链接。 vs 2010 发布网站 错误 asp.net中的JS问题 如何实现BLOG 记录最近访客??? 谁能给小弟一个考试系统的源码~~~~~ 送分题:如何获取到目录名?详细如下 怎样让带HTML标记的内容正常显示在页面上呢 使用FileUpload控件上传图片,上传不到文件夹,数据库也没有写入,图片无法显示。 怎样让受限用户能使用VS.NET? 入门提点,一定进来看看 (过五一献血帖)js取出URL参数的问题 急求解决~~~谢谢~~~~~ 如何设置TEXTBOX智能输入2位小数或者一位小数或者整数
RESTORE DATABASE sss TO DISK='c:/DataBase/orderfood.mdf'
<HEAD>
<title>获取服务器端数据库列表示例</title>
<% @Import Namespace="System.Data" %>
<% @Import Namespace="System.Data.SqlClient" %>
<script language="C#" runat="server">// 注意本节的数据库连接字符串
string ConnStr = System.Configuration.ConfigurationSettings.AppSettings["SQLCONNECTIONSTRING"];void Page_Load(object sender, System.EventArgs e)
{
if(!IsPostBack)
{
// 创建连接及执行数据库操作
string db_query = "sp_helpdb";SqlCommand myCommand = new SqlCommand(db_query, new SqlConnection(ConnStr));
myCommand.Connection.Open();
SqlDataReader dr = myCommand.ExecuteReader();// 将数据库列表绑定到下拉列表控件(DropDownList)
dbDropDownList.DataSource = dr;
dbDropDownList.DataTextField = "name";
dbDropDownList.DataBind();//关闭DataReader对象和数据库连接
dr.Close();
myCommand.Connection.Close();
}
}void dbDropDownList_SelectedIndexChanged(object sender, System.EventArgs e)
{
pathTextBox.Text = @"C:\BACKUP\"+dbDropDownList.SelectedValue+".bak";
}void backupButton_Click(object sender, System.EventArgs e)
{
string path = pathTextBox.Text;
string dbname = dbDropDownList.SelectedValue;string backupSql = "use master;";
backupSql = "backup database @dbname to disk = @path;";SqlCommand myCommand = new SqlCommand(backupSql, new SqlConnection(ConnStr));myCommand.Parameters.Add("@dbname", SqlDbType.Char);
myCommand.Parameters["@dbname"].Value = dbname;
myCommand.Parameters.Add("@path", SqlDbType.Char);
myCommand.Parameters["@path"].Value = path;try
{
myCommand.Connection.Open();
myCommand.ExecuteNonQuery();
infoLabel.Text = "备份成功";
}
catch(Exception ex)
{
infoLabel.Text = "备份失败<br/>"+ex.ToString();
}
finally
{
myCommand.Connection.Close();
}
}void restoreButton_Click(object sender, System.EventArgs e)
{
string path = pathTextBox.Text;
string dbname = dbDropDownList.SelectedValue;string restoreSql = "use master;";
restoreSql = "restore database @dbname from disk = @path;";SqlCommand myCommand = new SqlCommand(restoreSql, new SqlConnection(ConnStr));myCommand.Parameters.Add("@dbname", SqlDbType.Char);
myCommand.Parameters["@dbname"].Value = dbname;
myCommand.Parameters.Add("@path", SqlDbType.Char);
myCommand.Parameters["@path"].Value = path;try
{
myCommand.Connection.Open();
myCommand.ExecuteNonQuery();
infoLabel.Text = "恢复成功";
}
catch(Exception ex)
{
infoLabel.Text = "恢复失败<br/>"+ ex.ToString();
}
finally
{
myCommand.Connection.Close();
}
} </script>
</HEAD>
<body>
<form id="Form1" method="post" runat="server">
<h3>获取服务器端数据库列表示例</h3>
数据库列表:
<asp:dropdownlist id="dbDropDownList" runat="server" AutoPostBack="True" OnSelectedIndexChanged="dbDropDownList_SelectedIndexChanged">
<asp:ListItem Value="employee">employee</asp:ListItem>
</asp:dropdownlist>
<br>
<br>
请输入备份目录及备份文件名:
<asp:textbox id="pathTextBox" runat="server" Width="224px">
C:\BACKUP\Northwind.bak</asp:textbox>(目录必须存在)
<br>
<br>
<asp:button id="backupButton" runat="server" Font-Size="9pt" Text="备份数据库" OnClick="backupButton_Click"></asp:button>
<asp:button id="restoreButton" runat="server" Font-Size="9pt" Text="恢复数据库" OnClick="restoreButton_Click"></asp:button>
<br>
<br>
<asp:Label id="infoLabel" runat="server"></asp:Label>
</form>
</body>
</HTML>
2.拥有数据库备份和恢复的权限。登录数据库的帐号必须拥有相应的权限,一般情况是创建两个数据库登录帐号(一个帐号的权限是普通的增加删除数据,一个帐号的权限是备份恢复数据),然后用这两个不同的登录帐号创建两个不同的数据库链接,根据不同的情况使用不同的数据库链接。