使用powershell命令执行SQL脚本时出错

使用powershell命令执行SQL脚本时出错,powershell,Powershell,我正在使用一个调用PowerShell文件的批处理文件。在脚本执行过程中,会出现以下错误: 调用Sqlcmd:键“初始目录”的值长度超过 这是“128”的限制 代码: Add-PSSnapin SqlServerCmdletSnapin100 Add-PSSnapin SqlServerProviderSnapin100 invoke-Sqlcmd -serverinstance "CUREMD-DB10"-InputFile "C:\DailyPatch\run.sql" -querytim

我正在使用一个调用PowerShell文件的批处理文件。在脚本执行过程中,会出现以下错误:

调用Sqlcmd:键“初始目录”的值长度超过 这是“128”的限制

代码:

Add-PSSnapin SqlServerCmdletSnapin100
Add-PSSnapin SqlServerProviderSnapin100

invoke-Sqlcmd -serverinstance "CUREMD-DB10"-InputFile "C:\DailyPatch\run.sql" -querytimeout([int]::MaxValue)| Out-File -filePath "C:\DailyPatch\dbname.txt" 
$text=Get-Content C:\DailyPatch\dbname.txt

$a = $text.length
$a=$a-3

$logFile = 'C:\DailyPatch\dblog.txt'

for ($i=3 ; $i -le $a ;$i++)
{   
    write-host $text[$i]
    $error.clear()

    foreach ($rr in $error) {
        $text[$i] >> $logFile
        $rr >> $logFile
    }   
}

您需要提供run.sql的内容以获得进一步帮助。有些东西超过了“初始目录”的128个字符的限制,我相信这与数据库的连接有关。服务器实例是否用于具有默认实例?对于默认实例,仅指定计算机名称:“计算机”。对于命名实例,请使用“ComputerName\InstanceName”格式。此外,要为包装器生成正确的连接字符串(在本例中为Invoke Sqlcmd cmdlet),您需要分别设置数据源、InitialCatalog、UserId和其他属性。您需要提供run.sql的内容以获得进一步帮助。有些东西超过了“初始目录”的128个字符的限制,我相信这与数据库的连接有关。服务器实例是否用于具有默认实例?对于默认实例,仅指定计算机名称:“计算机”。对于命名实例,请使用“ComputerName\InstanceName”格式。另外,要为包装器生成正确的连接字符串(在本例中为Invoke-sqlcmdlet),您需要分别设置数据源、InitialCatalog、UserId和其他属性。