数据的导入导出是数据库管理员常见的工作任务之一,尤其是平面文件的导入导出。BCP 工具则为这些任务提供了强有力的支持,它是基于DB-Library,尤其是在生产环境中,从本地传送数据到服务器或从服务器传送数据到本地,因它无需提供图形界面,减少网络带宽,提高了传输速率。BCP的全称是BULK COPY PROGRAM,它是一个命令行程序,可以完全脱离SQL server进程来实现。
常用的导入方式:bcp, BULK INSERT,OPENROWSET,or SSIS。
本文主要介绍bcp工具的使用,其他的如BULK INSERT,OPENROWSET,or SSIS请参见后续博文。
bcp的使用:可以在SQL Server 2005 实例和用户指定格式的数据文件间实现大容量复制数据,可以将平面文件导入到SQL server表,也可以将SQL server表导出为文件。该命令为一个DOS命令,通常位于x:/Program Files/Microsoft SQL Server/90/Tools/Bin目录下,可以在命令提示符下使用。
以下简要列出其语法:
语法:bcp {[[database_name.][owner].]{table_name | view_name} | "query"} --指定相应的数据库名,表名,视图名或SQL查询语句,查询语句使用双引号括起来。
{in | out | queryout | format} data_file --数据流动的方向,in导入,out导出,queryout结果集 及指定data_file文件。
[-mmax_errors] [-fformat_file] [-x] [-eerr_file] --bcp的错误处理选项
[-Ffirst_row] [-Llast_row] [-bbatch_size] --可以指定特定行数
[-n] [-c] [-N] [-w] [-V (60 | 65 | 70 | 80)] [-6]