2017-02-02 46 views
0

所有数据库备份我怎样才能为他们创造这些文件可在他们的SQL Server实例的所有数据库备份文件。如何创建一个查询

+2

是 - 尼斯 - ?!?和**问题!** –

+0

为什么upvote和明星? – Himanshu

+1

我认为你有困惑。 Stackoverflow不是代码共享平台,它是一个问答网站。如果您想分享您的知识,欢迎您通过回答问题来做到这一点。在这种情况下,您可能需要编辑您的帖子到一个问题,并自己回答。 –

回答

0

如果有人想创建备份文件的文件可在他们的SQL Server实例的所有数据库,您可以使用此存储过程。

你必须从某个地方创建该存储过程,给您想要存储的所有文件.bak您的路径

-- Use code for creating all database backup 
USE [master] 
GO 

CREATE PROCEDURE [dbo].[CreateDBBackup] --create this sp somewhere in your SQL Server 
AS 
BEGIN 
    DECLARE @name VARCHAR(50) -- database name 
    DECLARE @path VARCHAR(256) -- path for backup files 
    DECLARE @fileName VARCHAR(256) -- filename for backup 
    DECLARE @fileDate VARCHAR(20) -- used for file name 

    -- specify database backup directory location 
    SET @path = 'D:\Backup\' 

    -- specify filename format 
    SELECT @fileDate = CONVERT(VARCHAR(20),GETDATE(),112) 

    DECLARE db_cursor CURSOR FOR 
     SELECT name 
     FROM master.dbo.sysdatabases 
     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 + '.BAK' 

     BACKUP DATABASE @name TO DISK = @fileName 

     FETCH NEXT FROM db_cursor INTO @name 
    END 

    CLOSE db_cursor 
    DEALLOCATE db_cursor 
END