#region 資料庫備份 BackupData
/// <summary>
/// 資料庫備份
/// </summary>
/// <param name="dir">MapPath轉換過的備份檔案目錄</param>
/// <param name="dbname">資料庫名稱</param>
/// <returns>傳回string值為空表示備份成功</returns>
public static string BackupData(string dir, string dbname)
{
string ErrorString = "";
string bakpath = string.Format("{0}/bak{1}.bak", dir, Utility.timestring);///完整的路徑
string strSql2 = string.Format("backup database {0} to disk='{1}'", dbname, bakpath);
using (SqlConnection conn = new SqlConnection(connectionString))
{
using (SqlCommand cmd = new SqlCommand(strSql2, conn))
{
try
{
conn.Open();
cmd.ExecuteNonQuery();
}
catch (Exception er)
ErrorString = er.Message;
}
}
return ErrorString;
}
#endregion
#region 還原資料庫(還原資料庫要有權限才能還原成功)RestoreData
/// 還原資料庫(還原資料庫要有權限才能還原成功)
/// <param name="bakpath">MapPath轉換過的備份檔案路徑</param>
/// <returns>傳回string值為空表示還原成功</returns>
public static string RestoreData(string bakpath, string dbname)
///這裡改成資料庫管理者帳号和密碼
//"Data Source=PKM-PC\\SQL05;Initial Catalog=dbtest;User Id=**;Pwd=****";
string cmdtxt = string.Format("use master restore database {0} from disk='{1}'", dbname, bakpath);
using (SqlConnection Conn = new SqlConnection(connectionString))
try
using (SqlCommand cmd = new SqlCommand(cmdtxt, Conn))
Conn.Open();
catch (Exception er)
ErrorString = er.Message;