declare @FILEID int, @ERRORNBR int, @SSQL nvarchar(512), @DBNAME varchar(50), @DW int, @SSQL2 nvarchar(1000)
set nocount on
select @DW=datepart(DW,getdate())
IF @DW <> 1
BEGIN
SET @SSQL2='IF EXISTS (select id FROM sysobjects WHERE name = ''FILEGROUPINFO'')
DROP TABLE FILEGROUPINFO'
EXEC sp_executesql @SSQL2
SET @SSQL2=' create table FILEGROUPINFO (backupname nvarchar(128),backupdescription nvarchar(255),backuptype int,expirationdate datetime,compressed tinyint,position smallint,devicetype tinyint,username nvarchar(128),servername nvarchar(128),databasename nvarchar(128),databaseversion int,databasecreationdate datetime,backupsize numeric(20,0),firstLSN numeric(25,0),lastLSN numeric(25,0),checkpointLSN numeric(25,0),DifferentialLSN numeric(25,0),backupstartdate datetime,backupfinishdate datetime,sortorder smallint,codepage smallint,unicodelocaleid int,unicodecomparisonstyle int,compatibilitylevel tinyint,softwarevendorid int,softwareversionMajor int,SoftwareVersionMinor int,SoftwareVersionBuild int,MachineName nvarchar(128),flags int,BindingID uniqueidentifier,recoveryforkID uniqueidentifier,collation nvarchar(128))'
EXEC sp_executesql @SSQL2
declare DB_NAME_CURSOR CURSOR FOR
select [name] FROM sysdatabases WHERE name NOT IN ('master','tempdb','model','msdb')
OPEN DB_NAME_CURSOR
FETCH NEXT FROM DB_NAME_CURSOR
INTO @DBNAME
WHILE @@FETCH_STATUS = 0
BEGIN
SET @SSQL =' RESTORE HEADERONLY FROM disk=''D:\Backups\Diff\' + @DBNAME + '_diff.bak'' '
INSERT FILEGROUPINFO
EXEC sp_executesql @SSQL
select @FILEID=MAX(position) FROM FILEGROUPINFO
SET @SSQL ='RESTORE DATABASE [' + @DBNAME + '] FROM DISK= ''D:\Backups\Diff\' + @DBNAME + '_Diff.bak'' WITH FILE =' + CAST(@FILEID AS varchar(10)) + ' , STANDBY =''C:\' + @DBNAME + '_Diff.ldf'''
EXEC sp_executesql @SSQL
TRUNCATE TABLE FILEGROUPINFO
FETCH NEXT FROM DB_NAME_CURSOR
INTO @DBNAME
END
CLOSE DB_NAME_CURSOR
DEALLOCATE DB_NAME_CURSOR
END
SET @SSQL2='IF EXISTS (select id FROM sysobjects WHERE name = ''FILEGROUPINFO'')
DROP TABLE FILEGROUPINFO'
EXEC sp_executesql @SSQL2
Thanks Kristen..Muah...
Sorry for the mixed case