У меня есть скрипт, который читает из базы данных MySQL с помощью DataAdapter. Есть три столбца в таблице idInstance, IPAddress и столбец auto id. Я хочу, чтобы IdInstance и IPAddress отображались в отчете, но когда я запускаю скрипт и выставляю его в таблицу, я получаю 7 столбцов, а дополнительные 5 - RowError, RowState, Table, ItemArray и HasErrors. Как я могу показать только 2 столбца, для которых нужны столбцы IdInstance и IpAddress. См. Изображение дополнительных столбцов. Кроме того, вывод на консоль верен, он показывает только idinstance и ipaddress. так что это должно быть что-то в коде для построения таблицы HTML?Дополнительные столбцы в таблице powershell
function Execute-MySQLQuery([string]$query) {
$command = New-Object MySql.Data.MySqlClient.MySqlCommand($query, $conn)
$dataAdapter = New-Object MySql.Data.MySqlClient.MySqlDataAdapter($command)
$dataSet = New-Object System.Data.DataSet
$dataAdapter.Fill($dataSet, "data")
$command.Dispose()
return $dataSet.Tables["data"]
}
# So, to produce a table of results from a query...
$Header = @"
<style>
TABLE {border-width: 1px;border-style: solid;border-color: black;border-collapse: collapse;}
TR:Nth-Child(Even) {Background-Color: #dddddd;}
TH {border-width: 1px;padding: 3px;border-style: solid;border-color: black;background-color: #6495ED;}
TD {border-width: 1px;padding: 3px;border-style: solid;border-color: black;}
</style>
<title>
Patch Report
</title>
"@
$Pre = "<h1>Patch Report </h1>"
$Pre += "<h2>These systmes are Not Running Patch Script</h2>"
$Post = "Run on "
$Post += Get-Date
$query = " SELECT prodinstances.Idinstance, prodinstances.IPAddress
FROM prodinstances
WHERE prodinstances.Idinstance
NOT IN (select prodwinupdates.ServersId FROM prodwinupdates) order by IPAddress ASC"
$result = Execute-MySQLQuery $query
$strfound = ("Found " + $result.rows.count + " Systems that are not currnetly running Patch Audit Script.")
$result | Format-Table
$emailSmtpServer = "mysmtpserver"
$emailFrom = "[email protected]"
$emailTo = "[email protected]"
$emailSubject = $strfound
$emailBody = $result | ConvertTo-HTML -Head $Header -PreContent $Pre -PostContent $Post | Out-String
Send-MailMessage -To $emailTo -From $emailFrom -Subject $emailSubject -Body $emailBody -BodyAsHtml -SmtpServer $emailSmtpServe
Спасибо Матиас вы спасатель ... – tmac