做数据库恢复不必要知道哪一个库处于打开状态,
只要将当前的数据库切换到如"master"或其它的数据库名,即可恢复!我用过了,并且成功了!
下面是代码:
  with ADOQuery1 do 
   begin
    Close;
    SQL.Clear;
    SQL.Add('use master');///这一句是关键
    SQL.add(恢复命令);
    EXECSQl; 
   end;
采用时请别忘加分!

解决方案 »

  1.   

    还是一样。加上use master也是一样出错。
      

  2.   

    如果还是一样,那就是你的其它连接没有断开。btw:你这个问题贴了好多个帖子啊,看来你很急,//cft,耐心点,好好找找,例如你同一个界面下有其它的adoquery连接到了某个user table。
    这个问题我那天也碰到了,后来慢慢找才发现的。另外,你可以先关闭你的程序,在MSSQL的“查询分析器”中,保证没有使用其它table下,测试下面的语句:
    use master
    restore....
    如果这个能够成功,那就是你程序有其它连接无疑。祝你好运!