Unity手动备份、还原SqlServer数据库
发布日期:2021-05-10 09:23:56 浏览次数:18 分类:精选文章

本文共 3922 字,大约阅读时间需要 13 分钟。

            C# WinForm ��������������������������������������������������������������������� MainForm���inz Ryder Button���OpenFileDialog ��� SaveFileDialog ���������������������������������������������������������������������������������������������������            ������������������������ connection string���            ```csharp            static string connectionString = "server=.;database=master;uid=sa;pwd=";            SqlConnection conn = new SqlConnection(connectionString);            ```            ### ���������������������            ```csharp            public bool BackUpDataBase(string databasefile)            {                if (!File.Exists(databasefile))                {                    return false;                }                string sql = $"BACKUP DATABASE MyDataBase TO DISK = '{databasefile}.bak'";                conn.Open();                SqlCommand comm = new SqlCommand(sql, conn);                comm.CommandType = CommandType.Text;                                try                 {                    comm.ExecuteNonQuery();                }                catch (Exception err)                {                    string str = err.Message;                    conn.Close();                    return false;                }                conn.Close();                return true;            }            ```            ### ���������������������            ������������������������������������������������������������������������            ```csharp            public string RestoreDatabase(string backfile)            {                SqlConnection conn = new SqlConnection();                conn.ConnectionString = "Data Source=.;Initial Catalog=master;User ID=sa;pwd =";                conn.Open();                string sql = $"SELECT spid FROM sysprocesses, sysdatabases WHERE sysprocesses.dbid = sysdatabases.dbid AND sysdatabases.Name='MyDataBase'";                SqlCommand cmd1 = new SqlCommand(sql, conn);                SqlDataReader dr;                ArrayList list = new ArrayList();                try                 {                    dr = cmd1.ExecuteReader();                    while (dr.Read())                    {                        list.Add(dr.GetInt16(0));                    }                    dr.Close();                }                catch (SqlException eee)                {                    MessageBox.Show(eee.ToString());                }                finally                 {                    conn.Close();                }                foreach (int i in list)                {                    conn.Open();                    SqlCommand cmd = new SqlCommand($"KILL {i}", conn);                    cmd.ExecuteNonQuery();                    conn.Close();                    MessageBox.Show($"������������������������������������ {i}\r\n���������������������");                }                string constr = @"Data Source=.;Initial Catalog=master;User ID=sa;pwd =";                string database = "MyDataBase";                string path = backfile;                string BACKUP = $"RESTORE DATABASE {database} FROM DISK = '{path}'";                SqlConnection con = new SqlConnection(constr);                SqlCommand cmd = new SqlCommand(BACKUP, con);                con.Open();                try                 {                    cmd.ExecuteNonQuery();                    MessageBox.Show("������������������������������������");                    Application.Exit();                }                catch (SqlException ee)                {                    MessageBox.Show(ee.ToString());                }                finally                 {                    con.Close();                }                return "���������������������";            }            

������������������������������������������������������������������������������������������������������������������������������

上一篇:C# 数据库访问通用类 (ADO.NET)
下一篇:Unity选择文件或者文件路径的方法

发表评论

最新留言

初次前来,多多关照!
[***.217.46.12]2025年04月03日 06时46分51秒