一、在sqlserver查詢分析器裏,執行:
EXEC master..xp_cmdshell 'bcp "SELECT * FROM [alarm].[dbo].[a_abc]" queryout "c:\book1.xls" -c -S"ip地址" -U"用戶名" -P"密碼"'
EXEC master..xp_cmdshell 'BCP test.dbo.name out d:\t_002.txt -c -t -T'
EXEC master..xp_cmdshell 'BCP "select name from test.dbo.name" queryout d:\t_004.txt -c -t -T'
EXEC master..xp_cmdshell 'BCP tran_test.dbo.uptrans out d:\t_006.txt -c -t -S HOUYAJUN\JHIDCDBS005 -T'
注意:會導出數據到服務器的c盤。
二、在cmd,命令行裏執行:
bcp "SELECT * FROM [alarm].[dbo].[a_abc]" queryout "c:\book1.xls" -c -S"ip地址" -U"用戶名" -P"密碼"
會導出到本地機器的c盤。
三、環境要求,導出的機器需要先安裝sqlserver,需要有binn\bcp.exe,即環境變量裏面需要有:
C:\Program Files\Microsoft SQL Server\80\Tools\BINN;
四、可能出現問題:
執行SQL bcp命令時出現“Syntax Error in ‘queryout’.”錯誤的原因及解決
在網上搜索發現,是因爲:後來在這個機器上安裝了Sybase數據庫。安裝Sybase後,導致環境變量發生了改變導致bcp命令出錯。
即sybase也有bcp命令,覆蓋了sqlserver的bcp命令,打開環境變量,把sqlserver的binn目錄放到前面。
參考:http://penpenguanguan.com/3064.html