Windows から OS X で実行されている .Net Core に移植している古い powershell スクリプトがあります。スクリプトは MySQL DB に接続し、データの読み取り/書き込みを行います。
Windows で実行したところ、MySqlDataAdapter を使用してデータを保存できました。ただし、これは新しい公式の MySQL DB プロバイダーを使用して行うことはできないようです (プロバイダーへのリンクはこちらです:こちら)。Powershell はバージョン v6.0.0-alpha.12 です
コードの抜粋例を次に示します。
$command = New-Object MySql.Data.MySqlClient.MySqlCommand($query, $connection)
$dataAdapter = New-Object MySql.Data.MySqlClient.MySqlDataAdapter($command)
$dataAdapter.SelectCommand.CommandTimeout = 0
$dataSet = New-Object System.Data.DataSet
Try {
$dataAdapter.Fill($dataSet)
$dataTable = new-object "System.Data.DataTable"
$dataTable = $dataSet.Tables[0]
$connection.Close()
} Catch [exception] {
$dataAdapter.Dispose()
$command.Dispose()
$dataAdapter = $null
return $Error
}
返されるエラーは次のとおりです。
New-Object : Cannot find type [MySql.Data.MySqlClient.MySqlDataAdapter]: verify that the assembly containing this type is loaded.
オフラインで使用するためにデータを保存する代替/より良い方法を知っている人はいますか? それとも、何かが足りないのですか?