使用存储过程备份SqlServer数据库
存储过程代码如下所示:
CREATE PROCEDURE [dbo].[SP_BackupDB] (@BackPath NVARCHAR(200), --备份路径,如:D:\Backup\@BackDbName NVARCHAR(50), --需要备份的数据库名称@BackName NVARCHAR(50)=@BackDbName OUTPUT, --备份后的数据库名称,不需要.bak后缀。若不传,则等同于@BackDbName@BackPathIsDate BIT=1, --备份路径是否需要添加日期文件夹,默认添加@BackNameIsTime BIT=1 --备份后的数据库名称是否需要追加当前时间,默认追加 ) AS BEGIN IF(@BackPathIsDate=1)BEGINSET @BackPath=@BackPath + CONVERT(VARCHAR, GETDATE(), 112) +'\';END---------------------------创建文件夹 Begin---------------------------DECLARE @FolderSQL NVARCHAR(MAX),@Return INT= 0;SET @FolderSQL = N'EXEC sp_configure ''show advanced options'',1 RECONFIGURE WITH OVERRIDE;EXEC sp_configure ''xp_cmdshell'',1 RECONFIGURE WITH OVERRIDE;EXEC @Return=xp_cmdshell ''mkdir ' + @BackPath+ ''',NO_OUTPUT --调用DOS命令创建文件夹;EXEC sp_configure ''xp_cmdshell'', 0 RECONFIGURE WITH OVERRIDE;EXEC sys.sp_configure N''show advanced options'', N''0''RECONFIGURE WITH OVERRIDE;'; --PRINT @FolderSQL; EXEC sp_executesql @FolderSQL, N'@Return INT OUTPUT', @Return OUTPUT; --SELECT @Return; --PRINT @Return---------------------------创建文件夹 End------------------------------------------------------备份数据库 Begin---------------------------DECLARE @NowTime VARCHAR(100);DECLARE @BackUpName VARCHAR(100);SET @NowTime=CONVERT(VARCHAR, GETDATE(), 112)+REPLACE(CONVERT(VARCHAR, GETDATE(), 108),':','');/*IF(LEN(@BackName)<=0)BEGINSET @BackName=@BackDbName;END*/IF(@BackNameIsTime=1)BEGINSET @BackName=@BackName +'_'+ @NowTime;ENDSET @BackName=@BackName+'.bak';SET @BackUpName=@BackPath + @BackName;BACKUP DATABASE @BackDbNameTO DISK=@BackUpNameWITH INIT;---------------------------备份数据库 End---------------------------SELECT @BackName BackName,@BackPath BackPath,@BackPath + @BackName FullBackName;ENDGO
转载于:https://www.cnblogs.com/qubernet/p/6229327.html
使用存储过程备份SqlServer数据库相关推荐
- 动态备份SQL-SERVER数据库——SQLDMO
转载:http://www.cnblogs.com/liulanglang/archive/2007/12/04/981812.html 上周要写一个SQL-SERVER数据库备份还原的程序,很没有思 ...
- sqlserver在linux数据备份,SQLServer数据库之sqlserver for linux自动备份数据库脚本
本文主要向大家介绍了SQLServer数据库之sqlserver for linux自动备份数据库脚本,通过具体的内容向大家展现,希望对大家学习SQLServer数据库有所帮助. 不多说直接上脚本 # ...
- oracle 怎么备份sqlserver数据库,Oracle和sqlserver数据库的备份与恢复
Oracle 数据库的备份与恢复 当我们使用一个数据库时,总希望数据库的内容是可靠的.正确的,但由于计算机系统的故障(包括机器故障.介质故障.误操作等),数据库有时也可能遭到破坏,这时如何尽快恢复数据 ...
- linux备份sqlserver数据库,Linux sqlServer数据库还原办法
一.mdf文件方式 一.拷贝文件到对应目录 /var/opt/mssql/data/ 二.给文件授权(xxx是指数据库文件名) chmod 777 xxx* 三.执行命令 USE [master] G ...
- ASP.NET备份恢复SqlServer数据库
备份SqlServer数据库 核心技术: using System.Data.SqlClient; using System.IO; string SqlStr1 = "Server=(lo ...
- c#+mysql备份还原数据库_C#实现对数据库的备份还原(完全) – meimao5211
( 用SQL语句实现对数据库备份还原操作 备份SqlServer数据库: backup database 数据库名 to disk (备份文件存放路径+文件名).bak 还原SqlServer数据库: ...
- SQLServer数据库的备份/恢复的3中策略实例
策略一 直接语句操作 实例: EXECUTE master.dbo.xp_fileexist N'F:\HR-ShiJie\Src\BackUpDevice.BAK' exec sp_addumpde ...
- 挺好用的SQLSERVER数据库自动备份工具SQLBackupAndFTP(功能全面)
挺好用的SQLSERVER数据库自动备份工具SQLBackupAndFTP(功能全面) 原文:挺好用的SQLSERVER数据库自动备份工具SQLBackupAndFTP(功能全面) 挺好用的SQLSE ...
- 一个sqlserver数据库表查看与备份软件
一个sqlserver数据库表查看与备份软件 先连接:点击获取,列出全部数据库名:点击某个数据库名,列出全部表名:点击表名,获取内容:如果表的行数过多,万以上,获取时间会长: 点击 导出为excel ...
- 数据库:SQLServer数据库备份方式介绍
今天小编给大家梳理一下数据库备份的相关知识,希望对大家能有所帮助! 1.完整备份 完整备份相当于针对整个数据库备份,包含数据库的全部内容.数据库完整备份可以将数据库的所有内容备份为一个.Bak文件.后 ...
最新文章
- 魔性“合成大西瓜”背后,我用 350 行代码解开了碰撞之谜!
- centos在线安装svn
- 200721学习日报
- asp网站短信api服务器,asp短信接口源码 比较简单但也挺实用用的(两个写法)...
- 前端基础-html-列表
- 功放(耳机/音箱)声压级计算(五)
- 每日算法系列【LeetCode 523】连续的子数组和
- java语法分析器_JavaCC语法分析器
- 如何选择合适的字体:宋体篇
- 抖音程序员向女友表白小程序源码及程序包
- katacontainers网络文件系统分析
- php mocking,php – Mocking Static Eloquent Models方法包括find()
- [思语]_一花一世界,一树一菩提
- 正睿19暑期B班DAY1-1 概率与期望
- java递归算法经典实例_Java实现简单的递归操作方法实例
- c语言程序一起来看流星雨,一起来看流星雨经典语录
- VScode必备插件、Emmet语法、面试题更新——用到老
- spring配置文件中引入其他的配置文件
- 家庭云 海康威视 H90 硬盘数据恢复方法
- 【汇正财经】什么是复盘?
热门文章
- Educational Codeforces Round 12 F. Four Divisors 求小于x的素数个数(待解决)
- 顶点计划:辅导员与学生关系讨论
- 以整数元素构成的list中的数字组成最小整数
- iOS自定义下拉列表
- 团队作业4——第一次项目冲刺(Alpha版本)4.23
- A. Holidays
- 一些会遗忘的代码属性
- 我的web2.0作品:畅想网络应用系统(采用JavaScript、Jquery、Ajax 等制作,完成时间10天)...
- 【译】成为明星数据科学家的13大技能
- 一元(多元)线性回归分析之R语言实现