procedura dbo.RestoreDatabase:
CREATE PROCEDURE [dbo].[RestoreDataBase]
-- Add the parameters for the stored procedure here
@dbname varchar(128)
AS
BEGIN
SET NOCOUNT ON;
declare @datapath varchar(max),
@datafilename varchar(128),
@datalogname varchar(128),
@commandstring nvarchar(max),
@mesajeroare varchar(50)
set @datapath ='C:\Program Files\Microsoft SQL Server\MSSQL10_50.PRODATASQL\MSSQL\DATA\'
set @datafilename=@datapath+@dbname+'.mdf'
set @datalogname=@datapath+@dbname+'.ldf'
if exists(select database_id from sys.databases where name =@dbname)
begin
set @mesajeroare='Baza de Date: '+@dbname+' exista deja!'
raiserror(@mesajeroare,16,10) with nowait
return
end
--BACKUP DATABASE prodata_model
-- TO bckupdev_prodatamodel
RESTORE FILELISTONLY
FROM bckupdev_prodatamodel
set @commandstring='RESTORE DATABASE ' + @dbname + ' FROM bckupdev_prodatamodel
WITH recovery,
MOVE '+char(39)+'prodata_model'+CHAR(39)+' TO '+char(39)+@datafilename+CHAR(39)+',
MOVE '+char(39)+'prodata_model_log'+CHAR(39)+' TO '+CHAR(39)+@datalogname+CHAR(39)+',
replace'
exec(@commandstring)
--exec sp_executesql @commandstring,N'@dbname varchar(128),@datafilename varchar(128),@datalogname varchar(128)',
-- @dbname,@datafilename,@datalogname
END