製品をチェック

無償トライアル:

無償トライアルへ

製品の情報と無償トライアルへ:

Cosmos DB ADO.NET Provider

Cosmos DB ドキュメントデータベース連携のパワフルな.NET アプリケーションを素早く作成して配布。

データ連携でお困りですか?

お問い合わせ

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


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


加藤龍彦
ウェブデベロッパー



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

クエリの実行

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

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

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

    SQL API を使ってCosmos DB アカウントに接続するために必要な接続文字列を取得するには、Azure Portal にログインして「Azure Cosmos DB」を選択し、自分のアカウントを選択します。「Settings」セクションで、「Connection String」をクリックして次の値を設定します。

    • AccountEndpoint: 値は、Cosmos DB アカウントの「Keys」ブレードからのCosmos DB アカウントURL である必要があります。
    • AccountKey: Azure ポータルで、Cosmos DB サービスに移動してAzure Cosmos DB アカウントを選択します。リソースメニューから、 「Keys」ページに移動します。「PRIMARY KEY」値を見つけ、Token をこの値に設定します。

    $constr = "AccountEndpoint=myAccountEndpoint;AccountKey=myAccountKey;" $conn= New-Object System.Data.CData.CosmosDB.CosmosDBConnection($constr) $conn.Open()
  3. CosmosDBDataAdapter のインスタンスを生成してSQL クエリを実行し、結果を出力:

    $sql="SELECT City, CompanyName from Customers" $da= New-Object System.Data.CData.CosmosDB.CosmosDBDataAdapter($sql, $conn) $dt= New-Object System.Data.DataTable $da.Fill($dt) $dt.Rows | foreach { Write-Host $_.city $_.companyname }

Cosmos DB データの更新

$cmd = New-Object System.Data.CData.CosmosDBCommand("UPDATE Customers SET Name='Morris Park Bake Shop' WHERE id = @myid", $conn) $cmd.Parameters.Add(new System.Data.CData.CosmosDBParameter("myid","10456255-0015501366")) $cmd.ExecuteNonQuery()

Cosmos DB へのデータの挿入

$cmd = New-Object System.Data.CData.CosmosDBCommand("UPDATE Customers SET Name='Morris Park Bake Shop' WHERE id = @myid", $conn) $cmd.Parameters.Add(new System.Data.CData.CosmosDBParameter("myid","10456255-0015501366")) $cmd.ExecuteNonQuery()

Cosmos DB データの削除

$cmd = New-Object System.Data.CData.CosmosDBCommand("UPDATE Customers SET Name='Morris Park Bake Shop' WHERE id = @myid", $conn) $cmd.Parameters.Add(new System.Data.CData.CosmosDBParameter("myid","10456255-0015501366")) $cmd.ExecuteNonQuery()