ここで見つけたこのデータベース接続スクリプトを使用します。私はそれを変更し、スクリプトを実行できるように適切な設定を行いましたが、発生しているエラーを理解していません。
スクリプト コードは次のとおりです。
Param(
[Parameter(
Mandatory = $true,
ParameterSetName = '',
ValueFromPipeline = $true)]
[string]$Query
)
$MySQLAdminUserName = 'myName'
$MySQLAdminPassword = 'myPass'
$MySQLDatabase = 'myDatabase'
$MySQLHost = 'HostingServerForMyDatabase'
$ConnectionString = server= + $MySQLHost + ;port=3306;uid= + $MySQLAdminUserName + ;pwd= + $MySQLAdminPassword + ;database=+$MySQLDatabase+
Try {
[void][System.Reflection.Assembly]LoadWithPartialName(MySql.Data)
$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)
$DataSet.Tables[0]
}
Catch {
Write-Host ERROR Unable to run query $query `n$Error[0]
}
Finally {
$Connection.Close()
}
それで、これは私が次のコマンドで受け取るエラーです-
コマンド: .\MySQL.ps1 -Query "select GUID FROM MYTABLE"
エラー:パラメーターの宣言は、オプションの初期化式を含む変数名のカンマ区切りのリストです。At (my script file path)\MySQL.ps1:5 char:30 + ValueFromPipeline = $true)] <<<<