SQL Server数据库导入导出之BCP工具

通过BCP工具可以将数据库中对象导出为数据文件,具体操作如下:

1.包含查询语句

exec master..xp_cmdshell 'bcp "select * from database.dbo.tableName" queryout "C:\a.txt" -S "databaseServer" -c -T'

 

2.不含查询语句

exec master..xp_cmdshell 'bcp "database.dbo.tableName" out "c:\a.txt" -S "databaseServer" -c -T'

---------------------------------

几个常用的参数:-f format_file

    format_file表示格式文件名。这个选项依赖于上述的动作,如果使用的是in或out,format_file表示已经存在的格式文件,如果使用的是format则表示是要生成的格式文件。

    -x                     这个选项要和-f format_file配合使用,以便生成xml格式的格式文件。

    -F first_row      指定从被导出表的哪一行导出,或从被导入文件的哪一行导入。

    -L last_row      指定被导出表要导到哪一行结束,或从被导入文件导数据时,导到哪一行结束。

    -c                     使用char类型做为存储类型,没有前缀且以"\t"做为字段分割符,以"\n"做为行分割符。

    -w                   和-c类似,只是当使用Unicode字符集拷贝数据时使用,且以nchar做为存储类型。

    -t field_term    指定字符分割符,默认是"\t"。

    -r row_term     指定行分割符,默认是"\n"。

   -S server_name[ \instance_name]    指定要连接的SQL Server服务器的实例,如果未指定此选项,bcp连接本机的SQL Server默认实例。如果要连接某台机器上的默认实例,只需要指定机器名即可。

    -U login_id       指定连接SQL Sever的用户名。

    -P password    指定连接SQL Server的用户名密码。

    -T                     指定bcp使用信任连接登录SQL Server。如果未指定-T,必须指定-U和-P。

    -k                     指定空列使用null值插入,而不是这列的默认值。
  -q      如果系统提示SET QUTO_IDENTIFIER ON/OFF时,需添加此参数

    权限:
    bcp out 操作要求对源表有 SELECT 权限。
    bcp in 操作要求至少对目标表有 SELECT/INSERT 权限。
    当被导入的表中存在CHECK约束和TRIGGER时,缺省的行为为关闭,不要指定-h 选项和 CHECK_CONSTRAINTS  以及FIRE_TRIGGERS 提示。故需要对表有Alter table 权限。

 
注:凡参数须加""  需注意大小写

转载于:https://www.cnblogs.com/Vitus_feng/archive/2010/04/19/1715726.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值