首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

sql server数据库的还原

Posted on   delphi  阅读(455)  评论(0编辑  收藏  举报
 void restoreButton_Click(object sender, System.EventArgs e)
   
{
    
string path = pathTextBox.Text;
    
string dbname = dbDropDownList.SelectedValue;

    
string restoreSql = "use master;";
    restoreSql 
+= "restore database @dbname from disk = @path;";
                
string pai = "use master;ALTER DATABASE Wy SET OFFLINE WITH ROLLBACK IMMEDIATE;ALTER DATABASE Wy SET ONLINE WITH ROLLBACK IMMEDIATE";
                SqlConnection conn 
= new SqlConnection(ConnStr);
                SqlCommand com1 
= new SqlCommand(pai, conn);

    SqlCommand myCommand 
= new SqlCommand(restoreSql, new SqlConnection(ConnStr));

    myCommand.Parameters.Add(
"@dbname", SqlDbType.Char);
    myCommand.Parameters[
"@dbname"].Value = dbname;
    myCommand.Parameters.Add(
"@path", SqlDbType.Char);
    myCommand.Parameters[
"@path"].Value = path;


    
try
    
{
                    conn.Open();
                    com1.ExecuteNonQuery();
                    conn.Close();
                    myCommand.Connection.Open();
     myCommand.ExecuteNonQuery();
                    infoLabel.Text 
= "恢复成功!<br>已经把备份"+path+"恢复到数据库";

    }

    
catch(Exception ex)
    
{
                    infoLabel.Text 
= "恢复失败!<br>出错信息如下:<br>" + ex.ToString();
    }

    
finally
    
{
     myCommand.Connection.Close();

    }

   }





努力加载评论中...
点击右上角即可分享
微信分享提示