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

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

無償トライアル:

ダウンロードへ

製品の詳細情報へ:

Box ADO.NET Provider

Box ファイルストレージデータと連携する.NET アプリケーションを素早く作成して配布。



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



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

クエリの実行

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

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

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

    Box は、認証にOAuth スタンダードを使用します。Box への認証には、登録アプリのOAuthClientId、OAuthClientSecret、CallbackURL を入力します。詳細はヘルプドキュメントの「はじめに」を参照してください。

    尚、本製品はBox のファイルの一覧表示やユーザー管理情報の取得用です。Box に保管されているExcel、CSV、JSON などのファイル内のデータを読み込みたい場合には、Excel DriverCSV DriverJSON Driver をご利用ください。

    $constr = "OAuthClientId=MyOAuthClientId;OAuthClientSecret=MyOAuthClientSecret;CallbackURL=http://localhost:33333;" $conn= New-Object System.Data.CData.Box.BoxConnection($constr) $conn.Open()
  3. BoxDataAdapter のインスタンスを生成してSQL クエリを実行し、結果を出力:

    $sql="SELECT Name, Size from Files" $da= New-Object System.Data.CData.Box.BoxDataAdapter($sql, $conn) $dt= New-Object System.Data.DataTable $da.Fill($dt) $dt.Rows | foreach { Write-Host $_.name $_.size }

Box データの更新

$cmd = New-Object System.Data.CData.BoxCommand("UPDATE Files SET Id='123' WHERE Id = @myId", $conn) $cmd.Parameters.Add(new System.Data.CData.BoxParameter("myId","10456255-0015501366")) $cmd.ExecuteNonQuery()

Box へのデータの挿入

$cmd = New-Object System.Data.CData.BoxCommand("UPDATE Files SET Id='123' WHERE Id = @myId", $conn) $cmd.Parameters.Add(new System.Data.CData.BoxParameter("myId","10456255-0015501366")) $cmd.ExecuteNonQuery()

Box データの削除

$cmd = New-Object System.Data.CData.BoxCommand("UPDATE Files SET Id='123' WHERE Id = @myId", $conn) $cmd.Parameters.Add(new System.Data.CData.BoxParameter("myId","10456255-0015501366")) $cmd.ExecuteNonQuery()