应公司策划要求,需要一个数据库按表导入导出的工具配合svn来进行差异匹配,方便策划每天对数据库修改的记录工具,我使用bcp命令实现如下批处理工具,中间踩了不少坑,现保存在这边希望可以帮到需要此工具的同学。

::数据库地址
set ip=127.0.0.1
::数据库帐号
set login=sa
::数据库密码
set passward=Passward
::数据库名称
set dataBase=MyDBName
::保存txt文件的路径
set filePath=d:\data\
::导入到数据库 (这边的way注释掉上面的in则是从数据库导出到txt,注释掉下面的则是从txt导入到数据库)
::set way=in
::导出到txt文本
set way=out ::这边先创建文件夹,按个人需求改
md %filePath% ::这边填写数据库表名
set dataTable=table1 table2 table3 table4 table5 table6 ::这边是根据导入还是导出进行一个删除数据库表的操作,因为bcp导入到数据库时如果原先数据库有数据会出现重复键不让插入的错误导致插入失败
if %way% == in (for %%i in (%dataTable%) do osql -S %ip% -U%login% -P%passward% -Q "TRUNCATE TABLE %dataBase%..%%i" ) ::这边是一个表数据的导入导出操作,使用bcp命令
for %%i in (%dataTable%) do bcp %dataBase%..%%i %way% %filePath%%%i.txt -c -S %ip% -U%login% -P%passward% pause

将代码复制到txt文件中,修改相应参数,保存文件为bat格式即可使用,sqlserver 2008 sqlserver2012测试可使用

bcp命令需要安装SQLManagementStudio工具,关于工具就不再描述了,网上可以搜到很多资料

数据库bcp导入导出批处理工具的更多相关文章

  1. SQL SERVER BCP导入导出

    bcp是SQL Server中负责导入导出数据的一个命令行工具,它是基于DB-Library的,并且能以并行的方式高效地导入导出大批量的数据.bcp可以将数据库的表或视图直接导出,也能通过SELECT ...

  2. BCP导入导出MsSql

    BCP导入导出MsSql 1.导出数据 (1).在Sql Server Management Studio中: --导出数据到tset1.txt,并指定本地数据库的用户名和密码 --这里需要指定数据库 ...

  3. oracle数据库数据导入导出步骤(入门)

    oracle数据库数据导入导出步骤(入门) 说明: 1.数据库数据导入导出方法有多种,可以通过exp/imp命令导入导出,也可以用第三方工具导出,如:PLSQL 2.如果熟悉命令,建议用exp/imp ...

  4. 导入导出Excel工具类ExcelUtil

    前言 前段时间做的分布式集成平台项目中,许多模块都用到了导入导出Excel的功能,于是决定封装一个ExcelUtil类,专门用来处理Excel的导入和导出 本项目的持久化层用的是JPA(底层用hibe ...

  5. mysql数据库的导入导出

    当我们在操作数据库的时候,难免会遇到数据导入导出的一些操作,今天突然学到了这个知识点,特意来给大家分享. 我用的是data的这条数据 1.使用数据 mysql> use data; Databa ...

  6. ORACLE数据库在导入导出时序列不一致的问题

    ORACLE数据库在导入导出时序列不一致的问题   在使用ORACLE数据库时,当给一个表设置自增字段时,我们经常会使用到序列+触发器来完成.但当你需要对数据库进行导入导出时,序列很容易出问题. 当你 ...

  7. oracle数据库的导入 导出实例

    oracle数据库的导入 导出实例 分类: DataBase2011-09-07 23:25 377人阅读 评论(0) 收藏 举报 数据库oraclefileusercmdservice 我要从另外一 ...

  8. linux mysql 数据库操作导入导出 数据表导出导入

    linux mysql 数据库操作导入导出 数据表导出导入 1,数据库导入 mysql -uroot -p show databases; create database newdb; use 数据库 ...

  9. Linux数据库的导入导出

    Linux数据库的导入导出 1.导入数据库 mysql -u username -p test < /home/data/test.sql 说明:username是数据库用户名,test为目标数 ...

随机推荐

  1. ZooKeeper 未授权访问漏洞

    ZooKeeper 安装: Zookeeper的默认开放端口是2181 wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zooke ...

  2. 高并发应对:淘宝CDN缓存服务器部署探秘

    转自:http://server.chinabyte.com/6/12663506.shtml “好,时间到,开抢!”坐在电脑前早已等待多时的宋兰(化名)一看时间已到2011年11月11日零时,便迫不 ...

  3. 将百度编辑器ueditor用在easyui中

    又一个自己想深爱却一直被拖着的对象--百度编辑器(ueditor) 但终究逃不过再次把它"供奉"起来的宿命,这不今天又得好好研究一下它的使用方法,以免自己今后再次使用时的各种不便- ...

  4. ts+antd报错error TS2605: JSX element type Xxx is not a constructor function for JSX elements

    antd 3 以前的版本需要在 tsconfig.json 的 compilerOptions 中配置 "allowSyntheticDefaultImports": true

  5. Esper学习之十一:EPL语法(七)

    上一篇说到了EPL如何访问关系型数据库这种数据源,实际上别的数据源,比如:webservice.分布式缓存.非关系型数据库等等,Esper提供了统一的数据访问接口.然后今天会讲解如何创建另外一种事件类 ...

  6. Android O PackageInstaller 解析

    Android O 8.0 1.src\com\android\packageinstaller\permission\mode\PermissionGroups.java @Override pub ...

  7. Linux 安装GCC讲解(在线和无网离线)

    本文主要介绍如何在无网络的环境下怎么离线安装GCC,如果有网,只需要通过命令 yum install gcc 进行安装就可以了,yum会自动把所有关联的依赖包也一起安装了,一键安装. yum inst ...

  8. 【黑金原创教程】【FPGA那些事儿-驱动篇I 】实验十六:IIC储存模块

    IIC储存器是笔者用来练习精密控时的经典例子.<整合篇>之际,IIC储存器的解释,笔者也自认变态.如今笔者回头望去,笔者也不知道自己当初到底发什么神经,既然将IIC的时序都解释一番.由于开 ...

  9. CreateTimerQueueTimer在DllMain中调用导致的loader lock

    开发一个COM组件在Windows 7上注册成功,但是Windows XP SP3版本却导致regsvr32.exe进程挂起.用WinDbg查看发现提示: Break- seconds... WARN ...

  10. Azure Redis 缓存的 ASP.NET 会话状态提供程序

    Azure Redis Cache 提供了一个会话状态提供程序,你可以使用其在缓存中(而不是内存中或在 SQL Server 数据库中)存储会话状态.要使用缓存会话状态提供程序,先首先配置缓存,然后使 ...