。。 
with DM.SJHF do
    begin
     TRY
      try
        close;
        SQL.Clear;
        SQL.Add('use master');
        SQL.Add('alter database CKGL set offline with rollback immediate');
        SQL.add('restore DataBase CKGL from Disk='+''''+ Trim(path)+'''');
        SQL.Add('alter database CKGL set online with rollback immediate');
        ExecSQL();
        。
以上是数据还原的一段代码。。CKGL是数据库名。。请高手们帮忙解释一下,为什么在restore语句前后加上alter 语句呢?这两条SQL语句是什么意思?谢谢!