.Net SQLデータベースのwebバックアップ

5106 ワード

B/Sモードに基づく、データベースのリモートバックアップ、バックアップ成功後にローカルにダウンロードできる
 1  protected void ButtonDataBackup_Click(object sender, EventArgs e)
2 {
3 string newname = " " + DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + DateTime.Now.Day.ToString() + DateTime.Now.Hour.ToString() + ".rar";
4
5 //
6
7 string con = System.Configuration.ConfigurationManager.AppSettings["ConnectionString"];
8
9 System.Data.SqlClient.SqlConnection cn = new SqlConnection(con);
10
11 string nepath = Server.MapPath("~/Web/DataImport/DataBackup/") + newname;
12
13 string sql = "BACKUP DATABASE OnLineExam to DISK ='" + nepath + "'";
14
15 SqlCommand cmd = new SqlCommand(sql, cn);
16
17 try
18 {
19 cn.Open();
20
21 cmd.ExecuteNonQuery();
22 HyperLink1.Text = "" + "";
23 HyperLink1.NavigateUrl = "/DataBackup/" + Fname +newname;
24 HyperLink1.Visible = true;
25 }
26
27 catch (Exception ex)
28 {
29 LblMessage.Text = " , !";
30 LblMessage.Visible = true;
31 string exm = ex.Message;
32
33 }
34
35 finally
36 {
37
38 cmd.Dispose();
39
40 cn.Close();
41
42 cn.Dispose();
43
44 }
45 }