CUBRID 関数 (PDO_CUBRID)はじめにPDO_CUBRID は PHP Data Objects (PDO) インターフェイス を実装したドライバで、PHP から CUBRID データベースにアクセスするためのものです。
インストール手順PDO_CUBRID 拡張モジュールをビルドするには、PHP を動かしているシステム上に CUBRID DBMS をインストールしなければなりません。 PDO_CUBRID は » PECL 拡張モジュールなので、 PECL 拡張モジュールのインストール の手順に従えば PDO_CUBRID をインストールできます。configure コマンドを実行するときに、次のようにして CUBRID のベースディレクトリの場所を指定します。 $ ./configure --with-pdo-cubrid=/path/to/CUBRID[,shared] この PECL 拡張モジュールの DLL は、現在存在しません。 Windows でのビルド も参照ください Linux や Windows への手動でのインストールに関する詳細な情報は、 PECL の CUBRID パッケージに含まれる build-guide.html を参照ください。 PDO_CUBRID の機能スクロール可能なカーソルPDO_CUBRID はスクロール可能なカーソルをサポートしており、デフォルトの型は前進のみのカーソルです。 PDO::prepare の driver_options パラメータを使えばカーソルの型を変えることができます。 タイムアウトPDO_CUBRID は sql ステートメントの実行時のタイムアウトの設定をサポートしています。 PDO::setAttribute を使えばタイムアウトの値を設定できます。 Autocommit_mode およびトランザクションPDO_CUBRID は自動コミットとトランザクションをサポートしており、 自動コミットモードがデフォルトで有効になっています。 PDO::setAttribute を使えば状態を変更することができます。 PDO::beginTransaction でトランザクションを開始すると autocommit_mode は自動的に無効となり、PDO::commit あるいは PDO::rollBack の後で元の状態に戻します。
複数の SQL 文
PDO_CUBRID は複数の SQL 文をサポートしています。
複数の SQL 文はセミコロン ( スキーマ情報PDO_CUBRID では PDO::cubrid_schema 関数を用意しており、これでスキーマ情報を取得します。 LOBsPDO_CUBRID は BLOB/CLOB データ型をサポートしています。PDO における LOB はストリームで表現されているので、LOB を追加するにはストリームをバインドし、 LOB を取得するには CUBRID PDO が返すストリームを読み込みます。 例1 CUBRID PDO での LOB の追加
例2 CUBRID PDO での LOB の取得
カラムのメタ情報CUBRID PDO における PDOStatement::getColumnMeta は、次の値を含む連想配列を返します。
コレクションデータ型PDO_CUBRID は SET/MULTISET/SEQUENCE といったコレクションに対応しています。 データ型を省略した場合のデフォルトは char で、次の例のようになります。 例3 CUBRID PDO で、デフォルトのデータ型のセットを追加する例
例4 CUBRID PDO でのセットの追加でデータ型を指定する例
CUBRID のバインドデータ型 ( PDOStatement::bindParam の五番目のパラメータ):
定義済み定数このドライバでは以下の定数が定義されて
います。これは拡張モジュールが PHP に組み込まれているか、実行時に動的にロード
されている場合のみ使用可能です。さらに、これらのドライバ固有の定数は
そのドライバを使用している場合にのみ使用されます。
あるドライバ固有の属性を別のドライバで使うと、予期せぬ結果を引き起こします。
もし複数のドライバを使用しているコードを実行している場合、
PDO::getAttribute で これらの定数を使ってデータベースの属性を設定します。これらの定数は PDO::getAttribute あるいは PDO::setAttribute に渡します。
これらの定数を使ってトランザクション分離レベルを設定します。これらの定数は PDO::getAttribute に渡したり PDO::setAttribute から返されたりします。
これらの定数を使ってスキーマ情報を取得します。これらの定数は PDO::cubrid_schema に渡します。
|