![]() |
#2
wangzai9002008-09-11 11:26
|
具体提示错误如下:
尚未备份数据库 "SnQDates" 的日志尾部。如果该日志包含您不希望丢失的工作,请使用 BACKUP LOG WITH NORECOVERY 备份该日志。请使用 RESTORE 语句的 WITH REPLACE 或 WITH STOPAT 子句来只覆盖该日志的内容。 RESTORE DATABASE 正在异常终止。已将数据库上下文更改为 'master'。
数据恢复代码如下:

string bakname = "bakdb2008724.bak";
string bakname1 = "bakdb";
string sql = "Alter Database SnQDates Set Offline with Rollback immediate;"; //db 是要备份的数据库名
sql += "restore database SnQDates from disk = '";
sql += Server.MapPath("../backup").ToString() +"\\";
sql += bakname + "'"; //bakname 是备份文件名
sql += "Alter Database MyData Set OnLine With rollback Immediate;";
try
{
string SqlStr1 = "Server=(local);database=master;Uid=sa;Pwd=123456";
SqlConnection conn = new SqlConnection(SqlStr1);
conn.Open();
SqlCommand com = new SqlCommand(sql, conn);
com.ExecuteNonQuery();
Response.Write("<script language=javascript>alert('数据恢复成功!');</script>");
}
catch(Exception ex)
{
Response.Write("<script language=javascript>alert('数据恢复失败!');</script>");
this.Label1.Text = ex.ToString();
}
string bakname1 = "bakdb";
string sql = "Alter Database SnQDates Set Offline with Rollback immediate;"; //db 是要备份的数据库名
sql += "restore database SnQDates from disk = '";
sql += Server.MapPath("../backup").ToString() +"\\";
sql += bakname + "'"; //bakname 是备份文件名
sql += "Alter Database MyData Set OnLine With rollback Immediate;";
try
{
string SqlStr1 = "Server=(local);database=master;Uid=sa;Pwd=123456";
SqlConnection conn = new SqlConnection(SqlStr1);
conn.Open();
SqlCommand com = new SqlCommand(sql, conn);
com.ExecuteNonQuery();
Response.Write("<script language=javascript>alert('数据恢复成功!');</script>");
}
catch(Exception ex)
{
Response.Write("<script language=javascript>alert('数据恢复失败!');</script>");
this.Label1.Text = ex.ToString();
}