BAT代码:

@echo off
Title DataBase
Color 0A
:caozuo
echo.
echo ═══════════════════════════════════════
echo 【数据库操作】:
echo 1.删除数据库
echo 2.还原数据库
echo 3.操作3
echo 4.操作4
echo 5.操作5
set /p n=输入操作号:
if "%n%"=="" cls&goto :caozuo
if "%n%"=="1" call :1
if "%n%"=="2" call :2
if "%n%"=="3" call :3
if "%n%"=="4" call :4
if "%n%"=="5" call :5
if /i "%n%"=="n" exit
pause
goto :eof :1
echo. 删除数据库开始…………
@osql.exe /Usa /Psa@123456 /Slocalhost /dmaster /i C:\Users\310171611\Desktop\142\database\DropDB.sql
echo. 删除数据库结束…………
goto :caozuo :2
echo. 还原数据库开始…………
@osql.exe /Usa /Psa@123456 /Slocalhost /dmaster /i C:\Users\310171611\Desktop\142\database\RestoreDB.sql
echo. 还原数据库结束…………
goto :caozuo
goto :caozuo :3
echo 操作3
goto :caozuo :4
echo 操作4
goto :caozuo :5
echo 操作5
goto :caozuo

bat文件中调用的是 dos命令 osql,大家对应的修改相应的链接字符串即可

RestoreDB.sql,DropDB.sql 为常用的sql文件,可以换成任意的sql

 DropDB.sql 

use master
go
alter database dbEMS set single_user with rollback immediate
--将数据库回滚到原始配置状态
go
drop database dbEMS--删除数据库
GO
use master
go
alter database dbEMSConfig set single_user with rollback immediate
--将数据库回滚到原始配置状态
go
drop database dbEMSConfig--删除数据库
GO

RestoreDB.sql

USE MASTER
go
if db_id('dbEMS') is not null
DROP DATABASE dbEMS
GO
create DATABASE dbEMS
RESTORE DATABASE dbEMS
FROM DISK = 'C:\Users\310171611\Desktop\142\database\dbEMS_A.bak'
WITH MOVE 'dbEMS' TO 'C:\database\dbEMS.mdf', MOVE 'dbEMS_log' TO 'C:\database\dbEMS_log.ldf',
STATS = 10, REPLACE
GO declare @msg varchar(70)
if (@@ERROR <> 0 )
begin
select @msg=convert(char(26),getdate(),9)+'-----dbEMS还原数据失败或出现异常'
print @msg
end
else
begin
select @msg=convert(char(26),getdate(),9)+'-----dbEMS数据库还原完毕'
print @msg
END
-------------------------------------------------------------------------
USE MASTER
go
if db_id('dbEMSConfig') is not null
DROP DATABASE dbEMSConfig
GO
create DATABASE dbEMSConfig
RESTORE DATABASE dbEMSConfig
FROM DISK = 'C:\Users\310171611\Desktop\142\database\dbEMSConfig_A.bak'
WITH MOVE 'dbEMSConfig' TO 'C:\database\dbEMSConfig.mdf', MOVE 'dbEMSConfig_log' TO 'C:\database\dbEMSConfig_log.ldf',
STATS = 10, REPLACE
GO declare @msg varchar(70)
if (@@ERROR <> 0 )
begin
select @msg=convert(char(26),getdate(),9)+'-----dbEMSConfig还原数据失败或出现异常'
print @msg
end
else
begin
select @msg=convert(char(26),getdate(),9)+'-----dbEMSConfig数据库还原完毕'
print @msg
end

其他的附加,分离的功能大家可以根据自己的情况来写sql脚本。

bat 操作数据库(附加,分离,删除,还原)的更多相关文章

  1. sqlserver数据库附加分离备份还原命令

    --获取所有数据库的名称 select [name] from master.dbo.sysdatabases where [name]='master' --判断数据库是否存在 if exists( ...

  2. php 用封装类的方法操作数据库和批量删除

    封装类 <?php class DBDA { public $host="localhost"; //服务器地址 public $uid="root"; ...

  3. DDL_操作数据库_创建&查询和DDL_操作数据库_修改&删除&使用

    DDL操作数据库.表 1.操作数据库:CRUD C(Create):创建 创建数据库: create database 数据库名称: 创建数据库判断不存在再创建 create database if ...

  4. Redis 先操作数据库和先删除缓存, 一致性分析

    初始状态: 数据库和缓存中v=10 第一种,先删除缓存在操作数据库: 线程1准备更新数据库的值v=20,先删除缓存, 此时线程2进来, 缓存未命中,查询数据库v=10, 写入缓存v=10, cpu回到 ...

  5. bat操作数据库mysql

    createDB.bat文件内容: @echo off cd C:/Program Files/cl_ZWL_App/<a href="http://lib.csdn.net/base ...

  6. SQL 数据库 学习 005 学习必备的一些操作 --- 如何新建数据库 如何附加和分离数据库(如何备份还原数据库) 如何删除数据库

    我的电脑系统: Windows 10 64位 使用的SQL Server软件: SQL Server 2014 Express 如果我们要学习这个数据库,我们需要学习什么知识.比如:如何新建一个数据库 ...

  7. 数据库开发基础 SQL Server 数据库的备份、还原与分离、附加

    认识数据库备份和事务日志备份 数据库备份与日志备份是数据库维护的日常工作,备份的目的是 一.在于当数据库出现故障或者遭到破坏时可以根据备份的数据库及事务日志文件还原到最近的时间点将损失降到最低点 二. ...

  8. SQL 数据库的备份,还原,分离和附加以及聚合函数

    数据库备份 数据库备份可以手动备份和语句备份 一.手动备份数据库 1.鼠标右键选择你要进行备份的数据库-任务-备份 可以在常规选项页面你可以选择备份类型是进行完整数据库备份还是差异数据库备份 2.点击 ...

  9. 用分离、附加的方式实现sql server数据库的备份和还原

    一.数据库分离.附加的说明 SQL Server提供了"分离/附加"数据库."备份/还原"数据库.复制数据库等多种数据库的备份和恢复方法.这里介绍一种学习中常用 ...

随机推荐

  1. xftp连接不上阿里云服务器

    打开xftp默认是使用FTP协议,要连接到云服务器,需要将协议改为SFTP 连接成功

  2. Azure CLI的版本问题

    Azure支持多种管理方法.命令行方法有: PowerShell,PowerShell只能运行在Windows上 Azure CLI,而Azure CLI可以运行在Windows.MAC以及Linux ...

  3. IIS调用批处理权限的处理[转]

    最近公司希望将Windows 2003升级为Windows 2008,做完安全设置后发现.net调用批处理拒绝访问的情况.网上很多说更改应用程序池的权限,建议不需要修改该权限,我这里强烈建议使用默认的 ...

  4. Day2-Python基础2---字符编码与转码

    详细内容http://www.cnblogs.com/yuanchenqi/articles/5956943.html 一.编码介绍: 1.基本概念: 在python 2中默认编码是 ASCII,而在 ...

  5. [转] linux 启动文件及设置环境变量

    系统级启动文件  ==================================== 1./etc/rc  主启动文件,不要修改它 2./etc/rc.conf  决定启动哪些系统自带的守护进程 ...

  6. 转:InnoDB多版本(MVCC)实现简要分析

    InnoDB多版本(MVCC)实现简要分析 基本知识 假设对于多版本(MVCC)的基础知识,有所了解.InnoDB为了实现多版本的一致读,采用的是基于回滚段的协议. 行结构 InnoDB表数据的组织方 ...

  7. Java学习之系统高可用性渲染接口日志自动服务降级

    背景:公司都追求系统的高可用性,这里不可用时间就是其中很重要的一个指标,为此在做系统功能升级迭代的过程中如何快速处理异常恢复正常功能极为重要.现在对新增模块的要求是都增加开关,方便快速关闭异常模块,但 ...

  8. PHP类(一)-类的实例化

    类的实例化就是对象.一个类可以分成两个部分,一个是静态描述,就是类里的成员属性.第二个是动态描述,就是类里的成员方法,也就是对象的功能. 声明一个类,可以在class前加一些关键字,如abstract ...

  9. 简单的windows作业管理(自己也没弄透彻)

    先把代码贴出来,以后有时间再研究!简单的说,作业就相当于沙箱,可以使程序在一定范围内活动. #include "stdafx.h"#include "windows.h& ...

  10. findwindow\sendmessage向第三方软件发送消息演示

    这里仅仅是以putty作为演示消息发送机制和控件搜索机制 程序一:代填IP和端口,并建立远程连接 #include"stdafx.h"#include <windows.h& ...