2017-09-14 26 views
0

我在下面的代码创建我想读的文本文件到一个变量,并使用插入变量在SQL Server PowerShell的

$a = Get-Content sample_Cntl.TXT 
$a 
$e= $a.Substring(84,5) 
$e 
$server=server_name 
$db=database_name 

Invoke-Sqlcmd -Query "INSERT INTO table_name VALUES ('4070','12','0.0','0.0',$e,'6.31');" -ServerInstance $server -Database $db 

我要插入与数据库表中的其他值一起$ E,但它都是错误的。

什么,我得到的是值$作为

................................ .......................................... 201703 ... 06.31

我想获得$ e = 201703并将其插入表中。

欣赏这方面的任何帮助。

+0

你的错误是什么?详细解释你的问题 – Esperento57

回答

0

$e可能是一个数组,或者某种程度上没有为您的INSERT语句保留适当的数据项。您可能需要遍历数组并一次提供一个值。试试这样的:

$a = Get-Content sample_Cntl.TXT 
$e= $a.Substring(84,5) 
$server=server_name 
$db=database_name 
foreach($f in $e){ 
    Invoke-Sqlcmd -Query "INSERT INTO table_name VALUES ('4070','12','0.0','0.0',$f,'6.31');" -ServerInstance $server -Database $db 
} 
相关问题