0

Sql Server 2008 で bcp を使用していくつかの csv ファイルを作成しました。これらのファイルを 1 つにマージする必要があります。ファイルのパスを明示的に定義すると機能しますが、宣言すると、ファイルが見つからないことがわかります。

declare @variable_path_file1 = "c:\file.csv" declare @variable_path_file2 = "c:\file2.csv"

それはこのように動作します:

exec master..xp_cmdshell 'copy /b "c:\file.csv" + "c:\file2.csv" "C:\result.csv"'

しかし、次のようには機能しません。

exec master..xp_cmdshell 'copy /b @variable_path_file1 + @variable_path_file2 "C:\result.csv"'

このようなものでもありません:

 exec master..xp_cmdshell 'copy /b '@variable_path_file1' + '@variable_path_file2' "C:\result.csv"'

どちらも好きではありません:

 exec master..xp_cmdshell 'copy /b "'@variable_path_file1'" + "'@variable_path_file2'" "C:\result.csv"'

誰か助けてくれませんか?

4

1 に答える 1

3

以下のように使用します

SET @cmd = 'copy /b "' + @v_Header_path +'" + "'+ @v_Data_path +'" "' + @v_Out_file_path + '"'
exec master..xp_cmdshell @cmd
于 2015-08-20T11:04:47.910 に答える