Читайте также:
|
|
Базы данных. Задачи на модули SQL
Вариант 01
Создать хранимую процедуру без параметров, в которой для экземпляра SQL Server создаются резервные копии всех пользовательских баз данных. Имя файла резервной копии должно состоять из имени базы данных и даты создания резервной копии, разделенных символом нижнего подчеркивания. Дата создания резервной копии должна быть представлена в формате YYYYDDMM. Созданную хранимую процедуру протестировать.
Рекомендации.
BACKUP DATABASE имя_базы_данных TO DISK = полная_спецификация_файла_резервной_копии
-------------------------------
Написать сценарий на T-SQL, в котором для экземпляра SQL Server создаются резервные копии всех пользовательских баз данных. Имя файла резервной копии должно состоять из имени базы данных и даты создания резервной копии, разделенных символом нижнего подчеркивания. Дата создания резервной копии должна быть представлена в формате YYYYDDMM. Созданный сценарий протестировать.
DECLARE @name VARCHAR(50) – имя базы данных
DECLARE @path VARCHAR(256) – путь к backup-файлу
DECLARE @fileName VARCHAR(256) – полная спецификация файла
DECLARE @fileDate VARCHAR(20) – часть имени backup-файла, содержащая дату его создания
SET @path = 'D:\Backup\'
SELECT @fileDate = CONVERT(VARCHAR(20),GETDATE(),112)
DECLARE db_cursor CURSOR FOR
SELECT name
FROM master.dbo.sysdatabases –- sys.databases
WHERE name NOT IN ('master','model','msdb','tempdb')
OPEN db_cursor
FETCH NEXT FROM db_cursor INTO @name
WHILE @@FETCH_STATUS = 0
BEGIN
SET @fileName = @path + @name + '_' + @fileDate + '.BAK'
BACKUP DATABASE @name TO DISK = @fileName
FETCH NEXT FROM db_cursor INTO @name
END
CLOSE db_cursor
DEALLOCATE db_cursor
Создать и протестировать хранимую процедуру T-SQL, в которой для экземпляра SQL Server создаются резервные копии всех пользовательских баз данных. Имя файла резервной копии должно состоять из имени базы данных и даты создания резервной копии, разделенных символом нижнего подчеркивания. Дата создания резервной копии должна быть представлена в формате YYYYDDMM.
Рекомендации
Для создания резервной копии базы данных воспользоваться инструкцией BACKUP DATABASE, имеющей следующий формат:
BACKUP DATABASE имя_базы_данных TO DISK = полная_спецификация_файла_резервной_копии
Имена баз данных экземпляра SQL Server можно извлечь из системного представления sys.databases.
CREATE PROCEDURE usp_01 @path VARCHAR(256)
AS
BEGIN
DECLARE @name VARCHAR(50) -- имя базы данных
DECLARE @fileName VARCHAR(256) -- полная спецификация файла
DECLARE @fileDate VARCHAR(20) -- часть имени backup-файла, содержащая дату его создания
SELECT @fileDate = CONVERT(VARCHAR(20),GETDATE(),112)
DECLARE db_cursor CURSOR FOR
SELECT name
FROM sys.databases
WHERE name NOT IN ('master','model','msdb','tempdb')
OPEN db_cursor
FETCH NEXT FROM db_cursor INTO @name
WHILE @@FETCH_STATUS = 0
BEGIN
SET @fileName = @path + @name + '_' + @fileDate + '.BAK'
BACKUP DATABASE @name TO DISK = @fileName
FETCH NEXT FROM db_cursor INTO @name
END
CLOSE db_cursor
DEALLOCATE db_cursor
END
GO
Дата добавления: 2015-02-16; просмотров: 58 | Поможем написать вашу работу | Нарушение авторских прав |