導入

導入 --  DB_Table パッケージの概要

説明

DB_Table パッケージは、データベースへのオブジェクト指向のインターフェイスを提供します。 主要なクラスは、次の 3 つです。

このパッケージは DB_Table クラスから始まりました。 これを書いたのは Paul M. Jones です。Database クラスと Generator クラスは、それぞれ 1.5.0RC1 および 1.5.0RC2 で追加されました。これらのマニュアルは 1.5.0 で追加されました。

コアの DB_Table クラスのプロパティには、 テーブルのスキーマを可搬性の高い データ型 を用いて表したものが格納されています。 クラスメソッドとしては、SQL コマンド INSERT や UPDATE、DELETE、SELECT を作成したり発行したりする便利な API が用意されています。また、定義済みのスキーマから RDBMS のテーブルを作成するメソッドもあります。 データの追加や更新の際には、簡単な型の検証を行います。 また、カラムの定義をもとにして自動的に HTML_QuickForm の入力フォームを作成するメソッドもあります。

DB_Table_Database のインスタンスには、 データベース内のテーブル間のリレーションについてのモデルが含まれます。 各テーブルは DB_Table のインスタンスとして表されます。 autoJoin() メソッドを使用すると、 任意の数のテーブルを連結するクエリの結合条件を自動的に作成することができます。 このクラスには、外部キーの妥当性を PHP 側で検証する機能もあります。 また、参照されている行が削除されたり更新されたりしたときに行われる処理、 つまり、いわゆる連鎖削除などを PHP でエミュレートすることもできます。

DB_Table_Generator クラスを使用すると、 DB_Table パッケージで既存のデータベースとのインターフェイスを作成する際に必要な PHP コードを自動的に生成することができます。 これは、最初にデータベースとのインターフェイスを作成する際にのみ使用します。

これらの各クラスについては、これ以降のページで個別に説明します。