日期:2014-05-18  浏览次数:20441 次

asp.net中备份及还原数据库问题
代码如下:
//备份数据库
        protected   void   btnBak_Click(object   sender,   EventArgs   e)
        {
                try
                {
                        string   sql   =   "backup   database   newmap   to   disk= ' "+Server.MapPath( "DataBaseBak/newmap.bak ")+ " ' ";
                        new   SYS().ExecuteNonQuery(sql);
                        lblMsg.Text   =   "操作成功,数据库已备份! ";
                }
                catch   (SqlException   ex)
                {
                        lblMsg.Text   =   "错误: "   +   ex.ToString();
                }
        }

        //还原数据库
        protected   void   btnRestory_Click(object   sender,   EventArgs   e)
        {
                try
                {
                        string   sql   =   "Alter   Database   newmap   Set   Offline   with   Rollback   immediate;restore   database   newmap   from   disk   = ' "+Server.MapPath( "DataBaseBak/newmap.bak ")+ " ';Alter   Database   newmap   Set   OnLine   With   rollback   Immediate; ";
                        new   SYS().ExecuteNonQuery(sql);
                        lblMsg.Text   =   "操作成功,数据库已还原! ";
                }
                catch   (SqlException   ex)
                {
                        lblMsg.Text   =   "错误: "   +   ex.ToString();
                }
        }

调用备份事件打死无反映,指定目录下没有数据库备份文件,还原也是一样的虽然都能成功执行,但是对数据库毫无影响。复制出SQL语句到SQL   SERVER   下执行又完全正常,数据库备份文件也出来了。但在代码里就不行...为什么啊?搞死我了。我是VS2005,数据库也是2005的,知道的高手快指教下

------解决方案--------------------
什么错误,不会是没权限吧...
------解决方案--------------------
我用你代码能备份但不能还原
------解决方案--------------------