SQL BCP в Powershell зависает - PullRequest
       10

SQL BCP в Powershell зависает

0 голосов
/ 19 сентября 2018

Я новичок в BCP.Я пытаюсь запустить утилиту bcp.exe из Powershell, но она зависает.Та же команда прекрасно работает в командной строке.Я использую Invoke-Expression для запуска bcp.exe.

Я могу запустить SQLCMD.exe без проблем.

Это моя сила.

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, он зависает.

enter image description here

Я могу запустить SQLCMD.exe из PowerShell нормально.

Что я делаю не так?Любые идеи или указатели.

1 Ответ

0 голосов
/ 19 сентября 2018

Я должен был поискать больше, прежде чем спрашивать здесь. Этот пост помог мне.Мне удалось запустить BCP из powershell с помощью команды Start-Process.

$bcp = 'c:\Program Files\Microsoft SQL Server\110\Tools\Binn\bcp.exe'
$arglist = @(
   #add all arguments.
)
Start-Process -FilePath $bcp -ArgumentList $arglist
...