用 查询分析器执行以下以下代码
use itemmanagerDB
delete from users
成功
use master
restore database itemmanagerDB from disk = 'c:\item.bak'
提示成功
数据恢复
select * from users 可以查询数据可是 如果我再次删除数据后
我在程序中
with ADOQuery1 do
    begin
      Close;
      SQL.Clear;
      SQL.Add('use master restore database itemmanagerDB from disk = '+quotedstr('c:\item.bak')+' with replace');
      ExecSQL;
    end;
也提示成功
可是select * from users 没有数据
这是为什么
如何解决呢?

解决方案 »

  1.   

    use itemmanagerDB
    再select
    更新dbgrid的数据源的数据集
      

  2.   

    with ADOQuery1 do
        begin
          Close;
          SQL.Clear;
          SQL.Add('use master restore database itemmanagerDB from disk = '+quotedstr('c:\item.bak')+' with replace  use itemmanagerDB');
          ExecSQL;
        end;
      

  3.   

    刚刚试了一下
    没有用啊
    我就奇怪 为什么在查询分析器上可以 在程序中就不行
    我的系统是 xpsp2 + sqlserver 2000sp3 开发版 + delphi7 +       ADOQUERY 
      

  4.   

    先,use itemmanagerDB
    再select...
    更新dbgrid的数据源的数据集: dbgrid1.datasource.dataset := adoquery1;
      

  5.   

    终于搞定了 发现 adoconnection 必须完全释放掉才行 累啊
      

  6.   

    如何adoconnection 必须完全释放掉啊,?
      

  7.   

    adoconnection 必须完全释放掉?????????