製品をチェック

無償トライアル:

無償トライアルへ

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

Cosmos DB ODBC Driver

使いやすいUnix 用Cosmos DB ODBC Driver。Unicode 対応32ビットおよび64ビットODBC。

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

お問い合わせ

PHP からCosmos DB にデータ連携。


CData ODBC Driver for CosmosDB を使って、PHP アプリケーションからCosmos DB にデータ連携。PHP でのODBC ネイティブサポートを活用。


cosmosdb ロゴ画像
odbc ロゴ画像

ODBC

PHP ロゴ画像

CData ODBC Driver for CosmosDB は、PHP アプリケーションからのCosmos DB データへの連携を可能にします。本記事では、Cosmos DB データをPHP のビルトインODBC 機能でクエリを実行する手順を説明します。

DSN の設定

Cosmos DB に接続するDSN を作成します。

  1. まずODBC DSN に必要な接続プロパティの値を入力します。 組み込みのMicrosoft ODBC データソースアドミニストレーターを使用してDSN を構成できます。 これは、ドライバーのインストール時の最後のステップでも可能です。 Microsoft ODBC データソースアドミニストレータを使用してDSN を作成および設定する方法については、ヘルプドキュメントの「はじめに」の章を参照してください。

    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 をこの値に設定します。

一般的な接続文字列:

AccountEndpoint=myAccountEndpoint;AccountKey=myAccountKey;

ビルトインのデータソースアドミニストレーターでDSN 設定をします。ドライバーのインストールの最後にアドミニストレーターが開きます。ヘルプの「はじめに」でODBC データソースアドミニストレータでCosmos DB に接続するDSN の設定方法を参照してください。

Cosmos DB への接続の確立

odbc_connect を呼び出して、Cosmos DB への接続を開きます。 odbc_pconnect メソッドでも可能です。コネクションを閉じるには、odbc_close もしくはodbc_close_all を使います。

$conn = odbc_connect("CData ODBC Cosmos DB Source","user","password");

コネクションはodbc_connect で開かれ、スクリプトが終わると終了します。odbc_pconnect メソッドで開いたコネクションは、スクリプトが終わっても開いたままです。これにより同じクレデンシャルであれば他のスクリプトでコネクションを共有することが可能です:

$conn = odbc_pconnect("CData ODBC Cosmos DB Source","user","password"); ... odbc_close($conn); //persistent connection must be closed explicitly

エレメントの作成

odbc_prepare を使って、Prepared ステートメントおよびパラメータライズドクエリを作成します。

$query = odbc_prepare($conn, "SELECT * FROM Customers WHERE Name = ?");

クエリの実行

Prepared ステートメントをodbc_execute を使って実行します。

$conn = odbc_connect("CData ODBC Cosmos DB Source","user","password"); $query = odbc_prepare($conn, "SELECT * FROM Customers WHERE Name = ?"); $success = odbc_execute($query, array('Morris Park Bake Shop'));

Non-Parameterized クエリは、odbc_exec を使います。

$conn = odbc_connect("CData ODBC Cosmos DB Source","user","password"); $query = odbc_exec($conn, "SELECT * FROM Customers");

結果の処理

odbc_fetch_array ファンクションの結果セット配列としてアクセスします。

$conn = odbc_connect("CData ODBC Cosmos DB data Source","user","password"); $query = odbc_exec($conn, "SELECT * FROM Customers"); while($row = odbc_fetch_array($query)){ echo $row["City"] . "\n"; }

odbc_result_all ファンクションで、結果セットをHTML テーブルとして表示します。

$conn = odbc_connect("CData ODBC Cosmos DB data Source","user","password"); $query = odbc_prepare($conn, "SELECT * FROM Customers WHERE Name = ?"); $success = odbc_execute($query, array('Morris Park Bake Shop')); if($success) odbc_result_all($query);

サンプルクエリのテスト

スタンドアロンのテスト環境をたちあげる簡単な方法はPHP のビルトインテストサーバーを使うことです。手順はこちらです:

  1. PHP の最新版のバイナリのダウンロード。

  2. フォルダにファイルを入れる。

  3. フォルダを開く。

  4. php.ini-development をphp.ini に変更。

  5. ブラウザからテストスクリプトにアクセスするためのコマンドを実行。

    php -S localhost:8000 -t C:\path-to-your-scripts -c C:\path-to-php\php.ini

他のサンプルクエリ

サポートされているSQL の詳細は、ヘルプドキュメントを参照してください。上のサンプルは、PHP community documentation for all ODBC functions のCosmos DB に特化したものです。