--自动创建备份SQL

时间:2023-03-09 19:36:27
--自动创建备份SQL

--自动创建备份SQL

DECLARE

@dbname VARCHAR(50) ,--要备份的数据库名称

@bakname VARCHAR(50) ,--备份后的bat名称

@sql VARCHAR(4000) --备份Sql语句

-----指定数据库

SET @dbname = 'magicdb'

--指定备份前缀

DECLARE     @year NVARCHAR(20) ,     @month NVARCHAR(20) ,     @day NVARCHAR(20) ,     @hour NVARCHAR(20) ,     @minute NVARCHAR(20) ,     @seconds NVARCHAR(20)

--年月日时分秒

SELECT  @year = YEAR(GETDATE()) ,         @month = MONTH(GETDATE()) ,         @day = DAY(GETDATE()) ,         @hour = DATENAME(HOUR, GETDATE()) ,         @minute = DATENAME(MINUTE, GETDATE()) ,         @seconds = DATENAME(SECOND, GETDATE())

--指定备份名称

SET @bakname = @dbname + '_BackUp_' + @year + '_' + @month + '_' + @day + ' '     + @hour + '_' + @minute + '_' + @seconds PRINT @bakname SET @sql = 'BACKUP DATABASE [' + @dbname + '] TO  DISK = N'''     + 'd:\BackupDataBaseFrom50\'---备份存放的位置

+ @bakname + '.bak'     + ''' WITH  INIT ,  NOUNLOAD ,  NOSKIP ,  STATS = 10,  NOFORMAT'

EXEC(@sql)--执行备份