Sql Server 导出数据至物理文件,再导回到数据库

从服务器导出数据至txt文件(含用户名,密码)
EXEC master..xp_cmdshell 'bcp  "select  * from ssKnitYY..orders" queryout "c:\DT.txt" -c -S"192.168.0.8" -U"sa" -P"000000"'

                                      “c:\DT.els”      

          
将txt数据导入到数据库(含用户名,密码)
EXEC   master..xp_cmdshell   'bcp   "YUAN_Test..orders"   in   "c:\DT.txt"   -c   -S"192.168.0.8" -U"sa" -P"000000"BCP共有四个动作可以选择。


(1) 导入。
这个动作使用in命令完成,后面跟需要导入的文件名。
(2) 导出。
这个动作使用out命令完成,后面跟需要导出的文件名。
(3) 使用SQL语句导出。
这个动作使用queryout命令完成,它跟out类似,只是数据源不是表或视图名,而是SQL语句。
(4) 导出格式文件。
这个动作使用format命令完成,后而跟格式文件名。'

常用的选项:(codeing时 需注意大小写)
-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值插入,

原文地址:https://www.cnblogs.com/yuanxianlai/p/2280559.html