Tema: Salvar BD
Ver Mensaje Individual
  #7  
Antiguo 23-12-2006
santi33a santi33a is offline
Miembro
 
Registrado: jun 2005
Posts: 208
Reputación: 20
santi33a Va por buen camino
Claro que lo he probado por ejemplo:
Tengo una base de datos llamada Prueba a la que me conecto cuando abro la aplicacion cliente, esto mediante TADOConnection, ahora cuando quiero restuarla cierro la conexión y abro una conexion mediante otro TADOConnection a la BD Master donde tengo un procedimiento almacenado llamado restaura
Código SQL [-]
CREATE PROCEDURE Restaura @n varchar(200) AS
begin
 restore database Prueba from disk= @n with RECOVERY ,  REPLACE 
end
GO
esto lo hago de esta forma

Código Delphi [-]
procedure TFRest.BitBtnAClick(Sender: TObject);
begin
  inherited;
  if od.Execute  then begin        // un OpenDialog
   dm.adoc.Close;                   // Cierro la conexion con la BD Prueba
   adom.Open;                       // Abro la conexion con la BD Master
   Restaura.Parameters.ParamByName('@n').Value := od.FileName; // Le paso la direccion al sp
   Label1.Caption := 'Restaurando ...';
   BitbtnC.Visible := False;
   BitbtnA.Visible := False;
   Update;
   try
    Restuara.ExecProc;                     //  Y mando a restaurarla BD 
   finally
    adom.Close;                      //  Cierro la conexion con Master
    dm.adoc.Open;                  //  y la vuelvo abrir con Prueba
    Close;
   end;
  end;
end;

El problema esta que siempre me dice que falla porque no tengo una conexion exclusiva con la DB y ésta está en uso, sin embargo desde el SQL Query Analizer si funciona
Dime si ves que estoy haciendo mal ?
Responder Con Cita