標籤:
指令碼語句按照填寫
DECLARE @dbname NVARCHAR(20)
SET @dbname=N‘aa‘--你需要備份的庫名
--定義備份時間,精確到秒
DECLARE @date NVARCHAR(64)
SELECT @date = SUBSTRING(CONVERT(VARCHAR(20), GETDATE(), 121), 1, 4) + ‘_‘
+ SUBSTRING(CONVERT(VARCHAR(20), GETDATE(), 121), 6, 2) + ‘_‘
+ SUBSTRING(CONVERT(VARCHAR(20), GETDATE(), 121), 9, 2) + ‘_‘
+ CONVERT(CHAR(2), DATEPART(hh, GETDATE()))
+ CONVERT(CHAR(2), DATEPART(mi, GETDATE()))
+ CONVERT(CHAR(2), DATEPART(ss, GETDATE()))
--定義要備份的資料庫名
DECLARE @db NVARCHAR(20)
SET @db = ‘‘ + @dbname + ‘‘
--定義備份檔案的全名
DECLARE @bakname NVARCHAR(128)
SELECT @bakname = @db + ‘_‘ + @date
--定義備份存放路徑
DECLARE @disk NVARCHAR(256)
SELECT @disk = N‘e:\databasebackup\‘ + @bakname + ‘.bak‘ --備份路徑名
--定義備份描述
DECLARE @name NVARCHAR(128)
SELECT @name = @db + ‘-完整 資料庫 備份‘
--定義錯誤資訊
DECLARE @error NVARCHAR(128)
SELECT @error = ‘驗證失敗。找不到資料庫“‘ + @db + ‘”的備份資訊。‘
BACKUP DATABASE @db TO DISK = @disk WITH COPY_ONLY, NOFORMAT, NOINIT,
NAME [email protected], SKIP, NOREWIND, NOUNLOAD, STATS = 10, CHECKSUM ;
DECLARE @backupSetId AS INT
SELECT @backupSetId = position
FROM msdb..backupset
WHERE database_name = @db
AND backup_set_id = ( SELECT MAX(backup_set_id)
FROM msdb..backupset
WHERE database_name = @db
)
IF @backupSetId IS NULL
BEGIN
RAISERROR(@error, 16, 1)
END
RESTORE VERIFYONLY FROM DISK = @disk WITH FILE = @backupSetId, NOUNLOAD, NOREWIND
GO
sqlserver 2008 自動備份報錯 沒有SQL Server Integration Services服務