Invoke-sqlcmd 没有 "quotes" 和 headers 的输出

Invoke-sqlcmd output without "quotes" and headers

输出示例:

#TYPE System.Data.DataRow <---
"PersonalNr" <---
"00001005"
"00001008"
"00001009"
"00001013"
"00001019"
"00001024"

要求:

我想要一个没有前两行和引号的输出,我该怎么做?

对于 headers 我尝试了选项 -h -1 但输出仍然相同。 Sqlcmd 甚至有可能吗?

当前代码:

Invoke-Sqlcmd -ServerInstance SERVER -h -1 -Query $QueryFmt | Export-CSV $AttachmentPath

此代码应该有效:

Invoke-Sqlcmd -ServerInstance "" -Database "" -Query "" | ConvertTo-Csv -NoTypeInformation -Delimiter "," | Select-Object -Skip 1 | % {$_ -replace '"', ""} | Out-File ("C:\test.csv") -Force -Encoding ascii

Invoke-Sqlcmd 产生:

PersonalNr       
---    
00001005  
00001001  
00001006  
00001007  
00001008 

使用 Export-Csv,文件看起来像:

#TYPE System.Data.DataRow
"PersonalNr"
"00001005"
"00001001"
"00001006"
"00001007"
"00001008"

使用我上面提到的代码,我得到的文件如下所示:

00001005
00001001
00001006
00001007
00001008

试试这个:

## You data for export to csv
$csv = Invoke-Sqlcmd -ServerInstance SERVER  -Query $QueryFmt
# 

##Will remove type information  and will remove header
$csv | Export-CSV -NoTypeInformation | select -Skip 1 | Set-Content $AttachmentPath 
#

试试这个,

$query_result | Format-Table -AutoSize -Wrap -HideTableHeaders