SQL SERVER 数据库备份代码实例

 更新时间:2019年03月23日 14:22:24   作者:吕忠峰  
这篇文章主要介绍了SQL SERVER数据库备份,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

本文实例为大家分享SQL SERVER数据库备份的具体代码,供大家参考,具体内容如下

/**
  批量循环备份用户数据库,做为数据库迁移临时用
*/

SET NOCOUNT ON

DECLARE @d varchar(8) 
DECLARE @Backup_Flag NVARCHAR(10)
 
SET @d=convert(varchar(8),getdate(),112) 

/***自定义选择备份哪些数据库****/
--SET @Backup_Flag='UserDB'      -- 所用的用户数据库
SET @Backup_Flag='AlwaysOnDB'    -- AlwaysOn 用户数据库

CREATE TABLE #T (ID INT NOT NULL IDENTITY(1,1),SQLBak NVARCHAR(MAX) NOT NULL)

IF @Backup_Flag='UserDB'
BEGIN 

  INSERT INTO #T (SQLBak)
  SELECT 
      'BACKUP DATABASE [' + name + '] TO DISK=''E:\Backup\' + NAME + '_Full_'+@d+'.bak'' WITH CHECKSUM,NOFORMAT,INIT,SKIP,COMPRESSION' AS 'SQLBak'
  FROM  sys.databases
  WHERE  database_id>4

END



IF @Backup_Flag='AlwaysOnDB' 
BEGIN 

  INSERT INTO #T (SQLBak)
  SELECT 
      'BACKUP DATABASE [' + database_name + '] TO DISK=''E:\Backup\' + database_name + '_Full_'+@d+'.bak'' WITH CHECKSUM,NOFORMAT,INIT,SKIP,COMPRESSION' AS 'SQLBak'
  FROM  sys.availability_databases_cluster
END



DECLARE 
  @Minid INT ,
  @Maxid INT ,
  @sql VARCHAR(max)
SELECT @Minid = MIN(id) ,
    @Maxid = MAX(id)
FROM  #T

PRINT N'--打印备份脚本..........'


WHILE @Minid <= @Maxid
  BEGIN
    SELECT @sql = SQLBak
    FROM  #T
    WHERE  id = @Minid
 ----exec (@sql)
    PRINT ( @sql )
    SET @Minid = @Minid + 1
  END

DROP TABLE #T

以上所述是小编给大家介绍的SQL SERVER数据库备份详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • SQL Server中的NULL值处理方案

    SQL Server中的NULL值处理方案

    本文将介绍SQL Server中判断和处理NULL值的不同方法,以及一些解决方案,帮助您更好地处理数据库中的NULL值情况,感兴趣的朋友跟随小编一起看看吧
    2023-07-07
  • 深入解析MS-SQL锁机制

    深入解析MS-SQL锁机制

    以下是对MS-SQL锁机制进行了详细的介绍,需要的朋友可以过来参考下
    2013-08-08
  • SqlServer应用之sys.dm_os_waiting_tasks 引发的疑问(上)

    SqlServer应用之sys.dm_os_waiting_tasks 引发的疑问(上)

    很多人在查看SQL语句等待的时候都是通过sys.dm_exec_requests查看,等待类型也是通过wait_type得出,sys.dm_os_waiting_tasks也可以看到session的等待那么有什么区别呢....,这篇文章给大家介绍SqlServer应用之sys.dm_os_waiting_tasks 引发的疑问(上),需要的朋友参考下
    2015-12-12
  • 在SQL Server中备份和恢复数据库的四种方法

    在SQL Server中备份和恢复数据库的四种方法

    在SQL Server中,创建备份和执行还原操作对于确保数据完整性、灾难恢复和数据库维护至关重要,本文给大家介绍了备份和恢复数据库的最佳方法,需要的朋友可以参考下
    2023-12-12
  • 使用SqlBulkCopy时应注意Sqlserver表中使用缺省值的列

    使用SqlBulkCopy时应注意Sqlserver表中使用缺省值的列

    今天,想将以前做的一个程序增加点功能,原本就使用SqlBulkCopy批量、定时的从目录中的txt文件导入数据到Sqlserver中。以前一直都使用正常,但是不知怎的就老是出现一个错误
    2012-07-07
  • SQL Server 全文搜索功能介绍

    SQL Server 全文搜索功能介绍

    SQL Server 的全文搜索(Full-Text Search)是基于分词的文本检索功能,依赖于全文索引。下面通过本文给大家介绍SQL Server 全文搜索功能介绍,需要的朋友参考下吧
    2017-12-12
  • SQL写法--行行比较

    SQL写法--行行比较

    行行比较是 SQL 规范,关系型数据库都应该支持这种写法,本文通过代码以及与其他写法进行比较来具体讲解这一规范,大家跟随小编一起来学习吧
    2021-08-08
  • SQL Server中查看对象定义的SQL语句

    SQL Server中查看对象定义的SQL语句

    这篇文章主要介绍了SQL Server中查看对象定义的SQL语句,除了在SSMS中查看view、存储过程等定义,也可以使用本文提供的的语句直接查询,适用很多对象类型,需要的朋友可以参考下
    2015-07-07
  • 浅析SQL Server中包含事务的存储过程

    浅析SQL Server中包含事务的存储过程

    数据库事务(Database Transaction) ,是指作为单个逻辑工作单元执行的一系列操作,要么完整地执行,要么完全地不执行。那么在存储过程里添加事务,则可以保证该事务里的所有sql代码要么完全执行要么完全不执行。
    2014-08-08
  • mysql基础知识扫盲

    mysql基础知识扫盲

    本文主要介绍关于mysql的一些非常基础的知识。具有很好的参考价值。下面跟着小编一起来看下吧
    2017-03-03

最新评论