为什么我的bcp查询不能在sql server中工作?

时间:2016-09-13 09:52:20

标签: sql-server bcp

我是sql server中的新用户并希望将选择查询保存到csv文件中,使用bcp查询为此目的写下此查询:

declare @cmd as nchar(50)
SET @cmd = 'bcp  select *from [behzad].[dbo].[behzad] queryout "d:\spt_values.dat" -U behbeh -P beh1368421 ' 
EXEC master..XP_CMDSHELL @cmd  


但我得到这个输出:
enter image description here
我该如何解决这个问题?谢谢。

1 个答案:

答案 0 :(得分:0)

当您使用queryout时,您的来源必须是查询。

由于查询有空白,您必须引用它:

你的@cmd nchar(50)更短,可能会截断你的命令。

试试这个:

declare @cmd as nchar(500)
SET @cmd = 'bcp  "select * from [behzad].[dbo].[behzad]" queryout "d:\spt_values.dat" -U behbeh -P beh1368421 ' 
EXEC master..XP_CMDSHELL @cmd  

使用SELECT * FROM ...查询实际上更容易使用3部分限定的表名与out而不是SELECT ...queryout ...