Восстановление базы данных с именем файла переменной даты скрипт - PullRequest
0 голосов
/ 19 июня 2019

Я хочу написать скрипт, который будет восстанавливать базу данных по имени базы + сегодняшняя дата. Пример: (test_01.05.2018.bak)

DECLARE @BackupFile as nvarchar(128);
SET @BackupFile = N'C:\backup\test1' + convert(varchar(12),Day(GETDATE()) -1) + (month(GETDATE()) * 100) + (year(GETDATE()) * 10000) + N'test1.bak'
USE master;
RESTORE DATABASE [TEST] FROM DISK = @BackupFile WITH FILE = 1,
MOVE N'test1' TO N'C:\db\TEST.mdf',  
MOVE N'test1_log' TO N'C:\db\TEST_log.ldf',
NOUNLOAD, REPLACE, STATS = 10

1 Ответ

0 голосов
/ 19 июня 2019

Ваш запрос имел бы дату в ГГГГММДД и вчерашнюю дату. Это ошибки из-за ошибки.

Может быть переписано что-то вроде

DECLARE @BackupFile as nvarchar(128);
SET @BackupFile = N'C:\backup\test1' + CONVERT(NVARCHAR(8), DATEADD(DAY, -1, GETDATE()), 112) + N'test1.bak'

Вам все равно придется редактировать другие части строки, поскольку я не мог понять это, но это поможет вам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...