使用BCP导出数据以及Bulk insert导入数据

BCP使用方法:1.使用命令行或PowerShell 2.使用SSMS

 

PowerShell 

--整个表导出(out)
  bcp 数据库名.dbo.表名 out c:\currency.txt -S"数据库实例" -U"用户" -P"密码" -c
  bcp [***].[dbo].[TableName] out D:\Work\Database\currency.txt -S "192.***.***.***" -U "SA" -P "123" -c
--使用SQL语句导出(queryout)
  bcp "select * from 数据库名.dbo.表名" queryout c:\currency.txt -S 数据库实例 -U"用户" -P"密码" -c
  bcp "select * from [***].[dbo].[TableName]" queryout D:\Work\Database\TableName.txt -S "192.***.***.***" -U "SA" -P "123456" -c

数据导入:
  bcp [***].[dbo].[TableName] in D:\Work\Database\currency.txt -S "192.***.***.***" -U "SA" -P "123456" -c

SSMS  *(导入导出路径以服务器路径为准,并非本地电脑路径)

--整个表导出(out)
  EXEC master..xp_cmdshell 
  'bcp [***].[dbo].[TableName] out D:\Work\Database\test.txt -S "192.***.***.***" -U "SA" -P "123456" -c'

数据导入:
  EXEC master..xp_cmdshell
  bcp [***].[dbo].[TableName] in D:\Work\Database\currency.txt -S "192.***.***.***" -U "SA" -P "123456" -c
使用 bulk insert 导入数据      
  BULK INSERT [OnePayTest].[dbo].[TableName]  FROM 'D:\Work\Database\TableName.txt';

  *导出数据时,若需要替换间隔符号或换行符,可针对-t及-r设置

例:bcp "select * from [***].[dbo].[TableName]" queryout D:\Work\Database\TableName.txt -S "192.***.***.***" -U "SA" -P "123456" -c -t "," -r "\n"

 

posted @ 2020-05-15 16:13  贰竹  阅读(432)  评论(0编辑  收藏  举报