使用BCP快速大容量导出或导入数据库数据

Sql Server数据库较大时,备份整库文件较慢。使用 BCP 既可以快速大容量导出库表数据到txt文档中,也可以快速导入本地数据文件。本文介绍了使用BCP进行数据备份和导入的方法。

备份

新建txt文档,复制粘贴下方代码块。其中,@echo off用于关闭回显,echo … 为辅助显示部分。

@echo off              


set database=phoenix
set db_server=127.0.0.1
set user=sa
set password=password

echo Start bcping out %database%...

set start=%time%
echo cuurent path %cd%

echo ============== Config============== 

bcp %database%..Equipment 	out Equipment.txt 	-S%db_server%  -c -U%user% -P%password%

echo Finish bcp ing out %database%
echo %start% ~ %time%

PAUSE


需要修改set部分的数据库名称、数据库服务器ip地址、数据库登录用户名、数据库登录密码;

需要修改核心语句:

bcp %database%…Equipment out Equipment.txt -S%db_server% -c -U%user% -P%password%

该语句用于导出数据库中的Equipment表的全部内容到Equipment.txt中,后续可用于数据导入。
根据实际表名进行修改,若需要复制其它表,再复制该行语句即可。
如:

bcp %database%..Equipment1 	out Equipment1.txt 	-S%db_server%  -c -U%user% -P%password%

bcp %database%..Equipment2	out Equipment2.txt 	-S%db_server%  -c -U%user% -P%password%

修改完成后将txt文档重命名为xx.bat文件,执行即可(注意保证和服务器网络是通的)。

导入

和导出操作类似,注意该批处理文件会先执行删除原表内容,再将本地的数据文件进行导入,请确认是否操作再进行执行。完整代码块如下:

@echo off

set database=phoenix
set db_server=127.0.0.1
set user=sa
set password=passowrd

echo Start bcping in %database%...

set start=%time%
echo cuurent path %cd%

echo ==============classify============== 
Osql -S%db_server% -d%database% -U%user% -P%password% -Q"delete from Equipments"
bcp %database%..Equipments in Equipments.txt -S%db_server% -c -U%user% -P%password%


echo Finish bcp ing in %database%
echo %start% ~ %time%

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用 bcp 或 sqlcmd 导入数据,您需要遵循以下步骤: 1. 创建数据表:在 SQL Server 数据库中创建一个数据表,该表将用于存储导入数据。 2. 准备数据文件:将要导入数据保存到一个文本文件中,每行表示一条记录,字段值之间用分隔符分隔。 3. 确定分隔符:确定数据文件中用于分隔字段值的分隔符。 4. 使用 bcp 命令或 sqlcmd 命令导入数据使用以下命令之一导入数据: - bcp 命令:使用 bcp 命令从数据文件中导入数据到 SQL Server 数据库中的表中。该命令使用以下语法:bcp database.schema.table in datafile -S servername -U username -P password -c -t separator - sqlcmd 命令:使用 sqlcmd 命令从数据文件中导入数据到 SQL Server 数据库中的表中。该命令使用以下语法:sqlcmd -S servername -d database -U username -P password -i scriptfile 在这些命令中,您需要替换以下参数: - database:要导入数据数据库名称。 - schema:要导入数据的表所在的架构名称。 - table:要导入数据的表名称。 - datafile:包含要导入数据的文件的路径和文件名。 - servername:SQL Server 实例的名称。 - username:连接到 SQL Server 的用户名。 - password:连接到 SQL Server 的密码。 - separator:数据文件中用于分隔字段值的分隔符。 以上是使用 bcp 或 sqlcmd 导入数据的基本步骤和命令。您可以根据需要进行调整或添加其他参数。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值