【发布时间】:2018-09-19 18:55:55
【问题描述】:
我是 BCP 的新手。我想从 Powershell 启动 bcp.exe 实用程序,但它挂起。相同的命令工作正常命令提示符。我正在使用Invoke-Expression 来启动 bcp.exe。
我可以毫无问题地启动 SQLCMD.exe。
这是我的 powershell。
Set-Location -Path "C:\Program Files\Microsoft SQL Server\110\Tools\Binn"
SQLCMD.EXE -b -E -S CORPSYSSQLDEV -d CORPSYSDM -Q "select top 10 * from t_test"
$psCommand = "bcp.exe ""testDB.dbo.t_test"" in ""C:\temp\test\testFile20180919.txt"" -c -t""\t"" -T -S ""TESTSQLDEV"" -e c:\temp\NoahFolder\error.csv"
Write-Host $psCommand
Invoke-Expression $psCommand
这是 $psCommand 的结果。
bcp.exe "testDB.dbo.t_test" in "C:\temp\test\testFile20180919.txt" -c -t"\t" -T -S "TESTSQLDEV" -e c:\temp\test\error.csv
在命令提示符下工作正常,但是当我运行 powershell 脚本时它卡住了。
我可以从 powershell 正常启动 SQLCMD.exe。
我做错了什么?任何想法或指示。
【问题讨论】:
-
我能够使用 Start-Process -FilePath $bcp -ArgumentList $arglist 解决我的问题
标签: sql powershell bcp