У меня есть строка в powershell, которая содержит собственную команду sqlcmd. Сама команда может быть успешно выполнена в cmd.exe. Я испытываю трудности при выполнении их в PowerShell. Кто-нибудь может помочь? Спасибо.
Это sql.sql
select @@servername
go
select @@servicename
Это результат, когда я выполняю команду sqlcmd из cmd.exe
C:\Users\test>sqlcmd -S "(local)\instance1" -U a -P a -i "c:\temp\sql.sql"
--------------------------------------------------
thesimpsons\INSTANCE1
(1 rows affected)
--------------------------------------------------
INSTANCE1
(1 rows affected)
C:\Users\test>
Это скрипт powershell для вызова команды sqlcmd.
$sql = @"
sqlcmd -S "(local)\instance1" -U a -P a -i "c:\temp\sql.sql"
"@
Invoke-Command $sql
Когда я выполняю этот скрипт powershell, я получаю следующую ошибку.
PS C:\TEMP> $sql = @"
sqlcmd -S "(local)\instance1" -U a -P a -i "c:\temp\sql.sql"
"@
Invoke-Command $sql
Invoke-Command : Parameter set cannot be resolved using the specified named parame
ters.
At line:5 char:15
+ Invoke-Command <<<< $sql
+ CategoryInfo : InvalidArgument: (:) [Invoke-Command], ParameterBin
dingException
+ FullyQualifiedErrorId : AmbiguousParameterSet,Microsoft.PowerShell.Commands
.InvokeCommandCommand