本記事では CData サポート担当からこんなことを聞かれたらどこを確認すべきか?という観点で、よく頂くお問合せ内容をご紹介します。
記事はこちら →Powershell からの MariaDB データ連携タスクを自動化
PowerShell から MariaDB に簡単に接続する方法をお探しですか? CData ADO.NET Provider for MariaDB は、PowerShell スクリプトの優位性を使い、シンプルで簡単に使えるADO.NET インターフェース を提供します。PowerShell スクリプトで、ADO.NET オブジェクトを使って簡単にMariaDB に接続して、同期、自動化、ダウンロードなどが可能!
CData ADO.NET Provider for MariaDB は、ADO.NET 標準インターフェースへ統合し、PowerShell のような. NET アプリケーションからMariaDB API へのデータ連携を可能にします。このプロバイダーは、MariaDB の認証および相互作用を簡単にします。このチュートリアルでは、PowerShell から直接SQL クエリを実行するための、いくつかの一般的なADO.NET オブジェクトの使い方を説明します。
クエリの実行
次の3つのステップに従って create、read、update、およびdelete (CRUD) のデータ連携コマンドを PowerShell からリアルタイムMariaDB に実行:
-
プロバイダーのアセンブリをロード:
[Reflection.Assembly]::LoadFile("C:\Program Files\CData\CData ADO.NET Provider for MariaDB\lib\System.Data.CData.MariaDB.dll")
-
MariaDB に接続:
接続には、MariaDB サーバーのServer およびPort プロパティを設定します。IntegratedSecurity をFALSE に設定する場合、User およびPassword プロパティが必要になります。Database は設定すればデータベースの指定が可能です。設定しない場合には全データベースが使えます。
$constr = "User=myUser;Password=myPassword;Database=NorthWind;Server=myServer;Port=3306;" $conn= New-Object System.Data.CData.MariaDB.MariaDBConnection($constr) $conn.Open()
-
MariaDBDataAdapter のインスタンスを生成してSQL クエリを実行し、結果を出力:
$sql="SELECT ShipName, ShipCity from Orders" $da= New-Object System.Data.CData.MariaDB.MariaDBDataAdapter($sql, $conn) $dt= New-Object System.Data.DataTable $da.Fill($dt) $dt.Rows | foreach { Write-Host $_.shipname $_.shipcity }
MariaDB データの更新
$cmd = New-Object System.Data.CData.MariaDBCommand("UPDATE Orders SET ShipCountry='USA' WHERE Id = @myId", $conn)
$cmd.Parameters.Add(new System.Data.CData.MariaDBParameter("myId","10456255-0015501366"))
$cmd.ExecuteNonQuery()
MariaDB へのデータの挿入
$cmd = New-Object System.Data.CData.MariaDBCommand("UPDATE Orders SET ShipCountry='USA' WHERE Id = @myId", $conn)
$cmd.Parameters.Add(new System.Data.CData.MariaDBParameter("myId","10456255-0015501366"))
$cmd.ExecuteNonQuery()
MariaDB データの削除
$cmd = New-Object System.Data.CData.MariaDBCommand("UPDATE Orders SET ShipCountry='USA' WHERE Id = @myId", $conn)
$cmd.Parameters.Add(new System.Data.CData.MariaDBParameter("myId","10456255-0015501366"))
$cmd.ExecuteNonQuery()
CodeProject