製品をチェック

無償トライアル:

無償トライアルへ

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

EnterpriseDB ODBC Driver

EnterpriseDB ODBC Driver は、ODBC 接続をサポートする任意のアプリケーションからリアルタイムなEnterpriseDB のデータに直接接続できる高機能なツールです。

標準のODBC Driver インターフェースを使用して、EnterpriseDB にアクセスします。

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

お問い合わせ

PHP からEnterpriseDB にデータ連携。


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


enterprisedb ロゴ画像
odbc ロゴ画像

ODBC

PHP ロゴ画像

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

DSN の設定

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

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

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

    • 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:サーバーが受け入れ可能な証明書。

一般的な接続文字列:

User=postgres;Password=admin;Database=postgres;Server=127.0.0.1;Port=5444

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

EnterpriseDB への接続の確立

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

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

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

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

エレメントの作成

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

$query = odbc_prepare($conn, "SELECT * FROM Orders WHERE ShipCountry = ?");

クエリの実行

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

$conn = odbc_connect("CData ODBC EnterpriseDB Source","user","password"); $query = odbc_prepare($conn, "SELECT * FROM Orders WHERE ShipCountry = ?"); $success = odbc_execute($query, array('USA'));

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

$conn = odbc_connect("CData ODBC EnterpriseDB Source","user","password"); $query = odbc_exec($conn, "SELECT * FROM Orders");

結果の処理

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

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

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

$conn = odbc_connect("CData ODBC EnterpriseDB data Source","user","password"); $query = odbc_prepare($conn, "SELECT * FROM Orders WHERE ShipCountry = ?"); $success = odbc_execute($query, array('USA')); 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 のEnterpriseDB に特化したものです。