參考:http://www.cnblogs.com/qanholas/archive/2011/07/05/2098616.html
bcp {dbtable | query} {in | out | queryout | format} 數據文件
[-m 最大錯誤數] [-f 格式化文件] [-e 錯誤文件]
[-F 首行] [-L 末行] [-b 批大小]
[-n 本機類型] [-c 字符類型] [-w 寬字符類型]
[-N 將非文本保持為本機類型] [-V 文件格式版本] [-q 帶引號的標識符]
[-C 代碼頁說明符] [-t 字段終止符] [-r 行終止符]
[-i 輸入文件] [-o 輸出文件] [-a 數據包大小]
[-S 服務器名稱] [-U 用戶名] [-P 密碼]
[-T 可信連接] [-v 版本] [-R 允許使用區域設置]
[-k 保留空值] [-E 保留標識值]
[-h"加載提示"] [-x 生成xml 格式化文件]
開啟CMDSHELL
GO SP_CONFIGURE 'show advanced options',1 GO RECONFIGURE GO sp_configure 'xp_cmdshell',1 GO RECONFIGURE GO
關閉CMDSHELL
GO sp_configure 'xp_cmdshell',0 O RECONFIGURE GO
--整表導出 EXEC master..XP_cmdshell 'bcp [master].[sys].[databases] out c:\1.txt -c -T'
--使用查詢導出 --如果使用查詢,導出使用queryout,查詢使用雙引號包括起來。 EXEC master..XP_cmdshell 'bcp "select top 3 * from master.sys.databases" queryout c:\2.txt -c -T'
--使用BCP IN導入數據 EXEC master..XP_cmdshell 'bcp master.dbo.TB2 in c:\2.txt -c -T'
--使用BULK INSERT導入數據 BULK INSERT master.dbo.TB2 FROM 'c:\2.txt'
--使用XML格式導出 --先導出格式化文件,再導出數據文件 --使用,分隔符 EXEC master..XP_cmdshell 'bcp [master].[sys].[databases] format nul -c -t"," -x -f "c:\dbFormat.xml" -T' EXEC master..XP_cmdshell 'bcp [master].[sys].[databases] out "c:\dbData.txt" -c -t"," -T'
--使用BCP IN+XML格式化文件導入數據 EXEC master..xp_cmdshell 'bcp master.dbo.TB2 in "c:\dbData.txt" -f "c:\dbFormat.xml" -T'
--使用BULK INSERT+XML格式化文件導入數據 BULK INSERT master.dbo.TB2 FROM 'c:\dbData.txt' WITH (FORMATFILE = 'c:\dbFormat.xml');
--使用OPENROWSET+XML格式化導入數據 INSERT INTO master.dbo.TB2 SELECT * FROM OPENROWSET(BULK 'c:\dbData.txt', FORMATFILE='c:\dbFormat.xml' ) AS T ;