1.數據庫備份
string bakname = "qd_material";
string sql = "backup database qd_material to disk = ''" + Server.MapPath("").ToString() + "\\" + bakname + System.DateTime.Now.ToString("yyyyMMddhhmmss") + ".bak''";
cs.ExecuteSQL(sql);
Response.Write("<script language=Javascript>alert(''備份成功!'');</script>");
//SQL語句
#backup database +表名+ to disk =/備份的文件
2.數據庫還原
string sql = "Alter Database qd_material Set Offline with Rollback immediate;"; //db 是要備份的數據庫名
sql += "restore database qd_material from disk = ''";
sql += Server.MapPath("").ToString() + "\\";
sql += bakname + "''"; //bakname 是備份文件名
sql += "Alter Database qd_material Set OnLine With rollback Immediate;";
from disk = ''" + Server.MapPath("").ToString() + "\\" + bakname + "Alter Database qd_material Set OnLine With rollback Immediate");
# use master Alter Database +數據庫+ Set Offline with Rollback immediate restore database qd_material from disk = 備份文件 Alter Database qd_material Set OnLine With rollback Immediate
如果前面不加use master, 可以出現以上情況
用戶必須在 master 數據庫中。
ALTER DATABASE 語句失敗。
因為數據庫正在使用,所以未能獲得對數據庫的排它訪問權。