Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Как добавит дату и время к концу имени бэкапа.  [new]
feofs
Member

Откуда:
Сообщений: 58
Здравствуйте, подскажите как в MSSQL 2000 T-SQL скрипте добавить дату время в конец файла. Я в нем не бум-бум Pioner . Нашел
вот это
set @path = N'D:\Иыу_tlog_'+Convert(VARCHAR(8), GetDate(),112)+'.TRN'
но так мне добавляет только дату, а надо еще время , чтобы получилось так: 201204051930 - одной строкой.
6 апр 12, 12:38    [12375323]     Ответить | Цитировать Сообщить модератору
 Re: Как добавит дату и время к концу имени бэкапа.  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
Нажать кнопку F1 и прочитать, какой стиль надо задавать в функции convert, чтобы дата была со временем.

Ну или не мучиться, а настроить Maintenance Plan.
6 апр 12, 12:40    [12375344]     Ответить | Цитировать Сообщить модератору
 Re: Как добавит дату и время к концу имени бэкапа.  [new]
feofs
Member

Откуда:
Сообщений: 58
F1 помог маленько, но нет такого style для GetDate чтобы вывел мне такую строку. Как ее сформировать?
6 апр 12, 14:08    [12376169]     Ответить | Цитировать Сообщить модератору
 Re: Как добавит дату и время к концу имени бэкапа.  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
feofs
F1 помог маленько, но нет такого style для GetDate чтобы вывел мне такую строку. Как ее сформировать?
F1->String Functions
Или через datepart клеить самому.
6 апр 12, 14:08    [12376176]     Ответить | Цитировать Сообщить модератору
 Re: Как добавит дату и время к концу имени бэкапа.  [new]
Александр Гладченко
Member

Откуда:
Сообщений: 10802
Блог
http://msmvps.com/blogs/gladchenko/archive/2009/10/07/1730580.aspx
6 апр 12, 14:18    [12376265]     Ответить | Цитировать Сообщить модератору
 Re: Как добавит дату и время к концу имени бэкапа.  [new]
trew
Member

Откуда: Москва
Сообщений: 2646
feofs,
Вот почти то, что Вам нужно
use master
GO

declare @str as varchar(150)
set @str ='D:\BACKUP_DB\Database_Name_' + replace(convert(varchar(16),SYSDATETIME()),':','-') +'_sql2008R2.bak'
--print @str 

BACKUP DATABASE Database_Name TO  
DISK =  @str 
WITH NOFORMAT, NOINIT,  NAME = N'Database_Name -Full Database Backup', SKIP, NOREWIND, NOUNLOAD --,  STATS = 10

выводит в таком виде: Database_Name_2012-03-27 05-00_sql2008R2.bak
6 апр 12, 14:27    [12376349]     Ответить | Цитировать Сообщить модератору
 Re: Как добавит дату и время к концу имени бэкапа.  [new]
trew
Member

Откуда: Москва
Сообщений: 2646
feofs,
select replace(replace(replace(convert(varchar(16),SYSDATETIME()),':','-'),'-',''),' ','')
6 апр 12, 14:30    [12376377]     Ответить | Цитировать Сообщить модератору
 Re: Как добавит дату и время к концу имени бэкапа.  [new]
feofs
Member

Откуда:
Сообщений: 58
У меня 2000, SYSDATETIME, еще тогда не придумали а вот за replace, и за ссылку спасибо.
Решил так:
Declare @path Varchar (255)
Declare @CMDStr Varchar(255)
set @path = N'D:\Base_tlog_'+Convert(VARCHAR(8), GetDate(),112)++replace(Convert(VARCHAR(5), GetDate(),108),':','')+'.TRN'
print @path

Спасибо за помощь.
6 апр 12, 14:40    [12376459]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить