0

I am selecting the data from view

I am Getting the error

usage: bcp [[db_name.]owner.]table_name[:slice_num] [partition pname] {in | out} [filename]
[-m maxerrors] [-f formatfile] [-e errfile] [-d discardfileprefix] 
[-F firstrow] [-L lastrow] [-b batchsize]
[-n] [-c] [-t field_terminator] [-r row_terminator]
[-U username] [-P password] [-I interfaces_file] [-S server]
[-a display_charset] [-z language] [-v]
[-i input_file] [-o output_file] 
[-A packet size] [-J client character set] 
[-T text or image size] [-E] [-g id_start_value] [-N] [-W] [-X]
[-M LabelName LabelValue] [-labeled]
[-K keytab_file] [-R remote_server_principal] [-C]
[-V [security_options]] [-Z security_mechanism] [-Q] [-Y]
[-y sybase directory] [-x trusted.txt_file]
[--clienterr errfile] [--maxconn maximum_connections]
[--show-fi] [--hide-vcc]
[--colpasswd [[[db_name.[owner].]table_name.]column_name [password]]]
[--keypasswd [[db_name.[owner].]key_name [password]]]
[--initstring ASE initialization string] [--quoted-fname]

NULL

declare @sql varchar(8000)

Select @sql=  'bcp "Select * from eBenefitSync_GUI_PH.dbo.Disp_View" out D:\Contacts.txt -c -T ' +'-s ' +@@servername+'\'+@@servicename
--EXECUTE master.dbo.xp_cmdshell @SQL
Nick.Mc
  • 18,304
  • 6
  • 61
  • 91

2 Answers2

0

The usage tells you it expects a database.table syntax, not a SQL query. Try removing the select * from:

declare @sql varchar(8000)

Select @sql=  'bcp "eBenefitSync_GUI_PH.dbo.Disp_View" out D:\Contacts.txt -c -T ' +'-s ' +@@servername+'\'+@@servicename
--EXECUTE master.dbo.xp_cmdshell @SQL
Simon
  • 1,081
  • 9
  • 14
0

To export a query with BCP, you need to use the queryout parameter instead of the out parameter. The out parameter can only address a table or view directly, not a query.

TT.
  • 15,774
  • 6
  • 47
  • 88