如何在没有SMO的情况下在c#.net中备份sql server 2005数据库

如何在没有SMO的情况下在c#.net中备份sql server 2005数据库

问题描述:

如何在没有SMO的情况下在c#.net中备份sql server 2005数据库

How to take backup of sql server 2005 database in c#.net without SMO

阅读以下内容:

http://technet.microsoft.com/en-us/library/ms187510.aspx#TsqlProcedure [ ^ ]



http://technet.microsoft.com/en- us / library / ms186865.aspx [ ^ ]
Read the following :
http://technet.microsoft.com/en-us/library/ms187510.aspx#TsqlProcedure[^]

http://technet.microsoft.com/en-us/library/ms186865.aspx[^]


关注 -



1. 使用C#.NET 2.0进行SQL Server 2005数据库备份和还原 [ ^ ]。

2. 使用C#和.NET 2.0进行SQL Server 2005数据库备份和还原 [ ^ ]。
Follow -

1. SQL Server 2005 Database Backup and Restore using C#.NET 2.0[^].
2. SQL Server 2005 Database Backup and Restore using C# and .NET 2.0[^].


这是一个用于在C#中备份的程序。希望它有帮助

Here is a procedure is use for back up in C#.Hope it helps
public  void PerformBackUp(string BackUpLocation, string BackUpFileName, string DatabaseName, string ServerName)
       {
           DatabaseName = "[" + DatabaseName + "]";
           string fileUNQ = DateTime.Now.Day.ToString() + "_" + DateTime.Now.Month.ToString() + "_" + DateTime.Now.Year.ToString() +"_"+ DateTime.Now.Hour.ToString()+ DateTime.Now .Minute .ToString () + "_" + DateTime .Now .Second .ToString () ;
           BackUpFileName = BackUpFileName + fileUNQ + ".bak";
           string SQLBackUp = @"BACKUP DATABASE " + DatabaseName + " TO DISK = N'" + BackUpLocation + @"\" + BackUpFileName + @"'";
           // Declare sqlconn,sqlcmd, show progresss execute non query
           string svr = "Server=" + ServerName + ";Database=master;Integrated Security=True";
           SqlConnection cnBk = new SqlConnection(svr);
           SqlCommand cmdBkUp = new SqlCommand(SQLBackUp, cnBk);

           try
           {
               cnBk.Open();
               cmdBkUp.ExecuteNonQuery();
               string msg = "Database " + DatabaseName + " successfully backed up to " + BackUpLocation + @"\" + BackUpFileName
                   + "\n Back Up Date : " + DateTime.Now.ToString();
               MessageBox .Show(msg,Application .ProductName , MessageBoxButtons .OK, MessageBoxIcon .Information );
               lblProgress.Visible = false;
               progressBar1.Visible = false;
           }
           catch (Exception ex)
           {
               MessageBox.Show("Database " + DatabaseName + "back up error.\n" + ex.Message, "Back Up Error", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
           }

           finally
           {
               if (cnBk.State == ConnectionState.Open)
               {

                   cnBk .Close();
               }
           }
       }