この問題の解決に助けが必要です: スクリプトでさらに使用するために、MySQL DB からテーブル データを取得する必要があります。MySQL データにアクセスするために次のコードを使用しています。
[void][System.Reflection.Assembly]::LoadFrom("C:\Program Files (x86)\MySQL\MySQL Connector Net 6.7.4\Assemblies\v2.0\MySql.Data.dll")
$Connection = New-Object MySql.Data.MySqlClient.MySqlConnection
$Connection.ConnectionString = $ConnectionString
$Connection.Open()
$Command = New-Object MySql.Data.MySqlClient.MySqlCommand($Query, $Connection)
$DataAdapter = New-Object MySql.Data.MySqlClient.MySqlDataAdapter($Command)
$DataSet = New-Object System.Data.DataSet
$RecordCount = $dataAdapter.Fill($dataSet,"data") | Out-Null
$Command.Dispose()
$Table=$DataSet.Tables["data"] | FT -auto
$Connection.Close()
$Table
そして、それは私の貴重ながらくたを与えてくれます:
TASKID TASKTYPE fistNAME secNAME STATUS ------ -------- -------- ------- ------ 1111 1 Dep1 0 2222 2 User321 Dep1 0
しかし、たとえば結果をCSVにエクスポートしようとすると:
Export-Csv -Path "c:\test.csv" -InputObject $Table
私が得るのは次のとおりです。
#TYPE System.Object[] "Count","Length","LongLength","Rank","SyncRoot","IsReadOnly","IsFixedSize","IsSynchronized" "6"、"6"、"6"、"1"、"System.Object[]"、"False"、"True"、"False"
したがって、次のように変数内のデータを解析しようとすると:
Write-Host $Table
foreach ($Task in $Table) {
Write-Host $Task.TASKID
}
私が得るのは次のとおりです。
Microsoft.PowerShell.Commands.Internal.Format.FormatStartData Microsoft.PowerShell.Commands.Internal.Format.GroupStartData Microsoft.PowerShell.Commands.Internal.Format.FormatEntryData Microsoft.PowerShell.Commands.Internal.Format.FormatEntryData Microsoft.PowerShell.Commands.Internal.Format.GroupEndData Microsoft.PowerShell.Commands.Internal.Format.FormatEndData
誰でもこの問題を解決するのを手伝ってもらえますか?