Powershell からの EnterpriseDB データ連携タスクを自動化

詳細情報をご希望ですか?

無償トライアル:

ダウンロードへ

製品の詳細情報へ:

EnterpriseDB ADO.NET Provider

EnterpriseDB 連携のパワフルな.NET アプリケーションを素早く作成して配布。



PowerShell から EnterpriseDB に簡単に接続する方法をお探しですか? CData ADO.NET Provider for EnterpriseDB は、PowerShell スクリプトの優位性を使い、シンプルで簡単に使えるADO.NET インターフェース を提供します。PowerShell スクリプトで、ADO.NET オブジェクトを使って簡単にEnterpriseDB に接続して、同期、自動化、ダウンロードなどが可能!



CData ADO.NET Provider for EnterpriseDB は、ADO.NET 標準インターフェースへ統合し、PowerShell のような. NET アプリケーションからEnterpriseDB API へのデータ連携を可能にします。このプロバイダーは、EnterpriseDB の認証および相互作用を簡単にします。このチュートリアルでは、PowerShell から直接SQL クエリを実行するための、いくつかの一般的なADO.NET オブジェクトの使い方を説明します。

クエリの実行

次の3つのステップに従って create、read、update、およびdelete (CRUD) のデータ連携コマンドを PowerShell からリアルタイムEnterpriseDB に実行:

  1. プロバイダーのアセンブリをロード:

    [Reflection.Assembly]::LoadFile("C:\Program Files\CData\CData ADO.NET Provider for EnterpriseDB\lib\System.Data.CData.EnterpriseDB.dll")
  2. EnterpriseDB に接続:

    データに接続するには、以下の接続プロパティが必要です。

    • Server: EnterpriseDB データベースをホスティングしているサーバーのホスト名またはIP アドレス。
    • Port: EnterpriseDB データベースをホスティングしているサーバーのポート。

    オプションで、以下を設定することもできます。

    • Database: EnterpriseDB サーバーに接続する場合のデフォルトのデータベース。設定されていない場合は、ユーザーのデフォルトデータベースが使用されます。

    Basic 認証による接続

    Basic 認証を使って認証するには、以下を設定します。

    • User:EnterpriseDB サーバーに認証する際に使われるユーザー。
    • Password:EnterpriseDB サーバーに認証する際に使われるパスワード。

    SSL 認証による接続

    SSL 認証を利用して、セキュアなセッションを介してEnterpriseDB データに接続できます。以下の接続プロパティを設定して、データに接続します。

    • SSLClientCert:クライアント証明書のための証明書ストア名に設定します。クライアントとサーバーの両方のマシンでトラストストアとキーストアが保持される2-way SSL の場合に使用されます。
    • SSLClientCertPassword:クライアント証明書ストアがパスワードで保護されている場合、この値をストアのパスワードに設定します。
    • SSLClientCertSubject:TLS/SSL クライアント証明書のSubject。ストア内の証明書を検索するために使用されます。
    • SSLClientCertType:クライアントストアの証明書タイプ。
    • SSLServerCert:サーバーが受け入れ可能な証明書。

    $constr = "User=postgres;Password=admin;Database=postgres;Server=127.0.0.1;Port=5444" $conn= New-Object System.Data.CData.EnterpriseDB.EnterpriseDBConnection($constr) $conn.Open()
  3. EnterpriseDBDataAdapter のインスタンスを生成してSQL クエリを実行し、結果を出力:

    $sql="SELECT ShipName, ShipCity from Orders" $da= New-Object System.Data.CData.EnterpriseDB.EnterpriseDBDataAdapter($sql, $conn) $dt= New-Object System.Data.DataTable $da.Fill($dt) $dt.Rows | foreach { Write-Host $_.shipname $_.shipcity }

EnterpriseDB データの更新

$cmd = New-Object System.Data.CData.EnterpriseDBCommand("UPDATE Orders SET ShipCountry='USA' WHERE Id = @myId", $conn) $cmd.Parameters.Add(new System.Data.CData.EnterpriseDBParameter("myId","10456255-0015501366")) $cmd.ExecuteNonQuery()

EnterpriseDB へのデータの挿入

$cmd = New-Object System.Data.CData.EnterpriseDBCommand("UPDATE Orders SET ShipCountry='USA' WHERE Id = @myId", $conn) $cmd.Parameters.Add(new System.Data.CData.EnterpriseDBParameter("myId","10456255-0015501366")) $cmd.ExecuteNonQuery()

EnterpriseDB データの削除

$cmd = New-Object System.Data.CData.EnterpriseDBCommand("UPDATE Orders SET ShipCountry='USA' WHERE Id = @myId", $conn) $cmd.Parameters.Add(new System.Data.CData.EnterpriseDBParameter("myId","10456255-0015501366")) $cmd.ExecuteNonQuery()