ありそでなさそな内容だったのでメモ。
Connector/Netを使うとC#からMySQLのデータを扱えますが、これ自体は.Net providerなので、.Net
Frameworkが扱えるところから利用することができます。今回はWindowsで利用できるPowerShellから扱ってみます。以下の環境で試してみます。
PowerShell: 1.0
Connector/Net: 6.0.4
まずアセンブリをロードします。
PS C:¥>
[reflection.assembly]::LoadWithPartialName("MySQL.Data")
GAC Version Location
--- ------- --------
True v2.0.50727
C:¥WINDOWS¥assembly¥GAC_MSIL¥MySQL.Data¥6.0.4.0__c5687fc88969c44d¥MySQL.Data.dll
接続文字列を準備して、接続します。
PS C:¥> $connStr =
"server=127.0.0.1;port=3306;uid=root;database=test;Pooling=False"
PS C:¥> $conn = New-Object
MySql.Data.MySqlClient.MySqlConnection($connStr)
SQL文を用意して、データアダプタを用意します。ここでは"SHOW TABLES"をSQL文の代わりに使ってみました。
PS C:¥> $cmd = New-Object
MySql.Data.MySqlClient.MySqlCommand("SHOW TABLES", $conn)
PS C:¥> $da = New-Object
MySql.Data.MySqlClient.MySqlDataAdapter($cmd)
データセットを作成して、データアダプタの内容を反映します。
PS C:¥> $ds = New-Object System.Data.DataSet
PS C:¥> [void]$da.Fill($ds)
最後に内容を表示します。データセットは新規に作成したので、$ds.Tables[0]で一つ目のテーブルを確認できます。
その内容をcmdletであるFormat-Tableで表形式にして表示しています。
PS C:¥> $result = $ds.Tables[0]
PS C:¥> $result | Format-Table
これはなかなか便利ですね。
Aug
14
2009