Dynamischer Dateiname für SQL Server -Sicherungen?
-
03-07-2019 - |
Frage
Wie können Sie das Datum in den Dateinamen (ein dynamischer Dateiname) einfügen, der in einem T-SQL-Sicherungsskript verwendet wird? Mit SQL Enterprise Manager zum Erstellen und Planen eines Sicherungsjobs möchte ich das erstellte T-SQL bearbeiten, um den Dateinamen der unterstützten Datenbank als dbname_date.bak (dh Northwind_5-1-2009.bak) zu ändern. Beim nächsten Mal wird es Northwinds_new_date.bak sein.
Lösung
Grundsätzlich möchten Sie eine String -Variable deklarieren, sie auf den Namen festlegen und dann das Datum am Ende der Variablen anhängen. Verwenden Sie dann einfach die Variable, in der der Name des Backups geht
declare @backupname nvarchar(100)
set @backupname = 'northwind_' + getdate() + '.bak'
So etwas sollte funktionieren. Möglicherweise müssen Sie den GetDate () zu Nvarchar sitzen.
Andere Tipps
Folgendes möchten Sie wirklich wissen - erfinden Sie das Rad nicht neu. Hier ist ein fantastisches Skript, um Backups zu automatisieren, die das tun, was Sie beschreiben: