警告 |
このモジュールは、実験的なものです。これは、これらの関数の動作、関数名は、このドキュメントに書かれて事項と同様に告知なく将来的なPHPのリリースで変更される可能性があります。注意を喚起するとともに、このモジュールは使用者のリスクで使用して下さい。 |
db++は、ドイツの企業Concept asaにより作成された高性能でかつメモリ使用量とディスク使用 量が小さいことを特徴とするリレーショナルデータベースシステムです。 db++では、SQLは補助的なインターフェイス原語として提供されており、 元来のSQLデータベースであるわけではありませんが、SQLよりも関係代 数にはるかに強く影響された固有のAQLクエリ言語が提供されています。
Concept asaは、常にオープンソース言語のサポートに関心を持って来て おり、db++はPerl、Tclコールのインターフェイスを何年も前から有し、 Tclを内部的なストアドプロシージャ言語として使用しています。
この拡張モジュールは外部クライアントライブラリに依存しており、こ の拡張モジュールを使用したいシステム上にdb++クライアントがインス トールされている必要があります。
Concept asaが、 Linux及び他のいくつかのUNIX版の db++デモ版および ドキュメントを 提供しています。また、Windows版のdb++もありますが、この拡張モジュー ルでは(まだ)サポートしていません。
この拡張モジュールの作成およびインストールには、db++のクライアント ライブラリとヘッダファイルが上記のようにシステムにインストール されていることが必要です。この拡張モジュールを構築するには、 configureにオプション --with-dbplusを付けてコンパイルする必要があります。
configure は、クライアントライブラリおよび ヘッダファイルをデフォルトのパス/usr/dbplus/、 /usr/local/dbplusおよび /opt/dblus以下で探します。db++を違う場所にイ ンストールしている場合には、configureのオプショ ンに--with-dbplus=/your/installation/pathのよう にインストールしたパスを追加する必要があります。
これらの定数は、この拡張モジュールで定義されており、 この拡張モジュールがPHP内部にコンパイルされているか実行時に動的にロー ドされるかのどちらかの場合のみ使用可能です。
表 1DB++エラーコード
PHP定数 | db++定数 | 意味 | |
---|---|---|---|
DBPLUS_ERR_NOERR | ERR_NOERR | Nullエラー条件 | |
DBPLUS_ERR_DUPLICATE (integer) | ERR_DUPLICATE | 冗長なタプルを挿入した | |
DBPLUS_ERR_EOSCAN (integer) | ERR_EOSCAN | rget()からスキャン終了 | |
DBPLUS_ERR_EMPTY (integer) | ERR_EMPTY | 関係が空(サーバ) | |
DBPLUS_ERR_CLOSE (integer) | ERR_CLOSE | サーバをクローズできない | |
DBPLUS_ERR_WLOCKED (integer) | ERR_WLOCKED | レコードは書き込みロックされている | |
DBPLUS_ERR_LOCKED (integer | ERR_LOCKED | 関係は既にロックされている | |
DBPLUS_ERR_NOLOCK (integer) | ERR_NOLOCK | 関係をロックできない | |
DBPLUS_ERR_READ (integer) | ERR_READ | 関係の読み込みエラー | |
DBPLUS_ERR_WRITE (integer) | ERR_WRITE | 関係の書き込みエラー | |
DBPLUS_ERR_CREATE (integer) | ERR_CREATE | create()システムコールが失敗 | |
DBPLUS_ERR_LSEEK (integer) | ERR_LSEEK | lseek()システムコールが失敗 | |
DBPLUS_ERR_LENGTH (integer) | ERR_LENGTH | 最大長を越えるタプル | |
DBPLUS_ERR_OPEN (integer) | ERR_OPEN | open()システムコールが失敗 | |
DBPLUS_ERR_WOPEN (integer) | ERR_WOPEN | 関係は既に書き込みオープンされている | |
DBPLUS_ERR_MAGIC (integer) | ERR_MAGIC | ファイルは関係でない | |
DBPLUS_ERR_VERSION (integer) | ERR_VERSION | ファイルは非常に古い関係である | |
DBPLUS_ERR_PGSIZE (integer) | ERR_PGSIZE | 関係は異なったページサイズを使用している | |
DBPLUS_ERR_CRC (integer) | ERR_CRC | 不正なCRCがスーパーページにある | |
DBPLUS_ERR_PIPE (integer) | ERR_PIPE | パイプ上の関係はlseek()を要求している | |
DBPLUS_ERR_NIDX (integer) | ERR_NIDX | セカンダリインデックスが多すぎる | |
DBPLUS_ERR_MALLOC (integer) | ERR_MALLOC | malloc()コールが失敗した | |
DBPLUS_ERR_NUSERS (integer) | ERR_NUSERS | 最大ユーザ数エラー | |
DBPLUS_ERR_PREEXIT (integer) | ERR_PREEXIT | 無効な使用法により発生 | |
DBPLUS_ERR_ONTRAP (integer) | ERR_ONTRAP | シグナルにより発生 | |
DBPLUS_ERR_PREPROC (integer) | ERR_PREPROC | プリプロセッサにおけるエラー | |
DBPLUS_ERR_DBPARSE (integer) | ERR_DBPARSE | パーサ上のエラー | |
DBPLUS_ERR_DBRUNERR (integer) | ERR_DBRUNERR | dbにおける実行エラー | |
DBPLUS_ERR_DBPREEXIT (integer) | ERR_DBPREEXIT | prexit()*プロシージャにより発生した終了条件 | |
DBPLUS_ERR_WAIT (integer) | ERR_WAIT | 少し待つ(simpleのみ) | |
DBPLUS_ERR_CORRUPT_TUPLE (integer) | ERR_CORRUPT_TUPLE | クライアントが壊れたタプルを送信した | |
DBPLUS_ERR_WARNING0 (integer) | ERR_WARNING0 | simpleルーチンが、修正済みの致命的でないエラーを発見した | |
DBPLUS_ERR_PANIC (integer) | ERR_PANIC | サーバは実際に実行中断していないが、全てのクライアントに ERR_PANICを送信が送信された | |
DBPLUS_ERR_FIFO (integer) | ERR_FIFO | fifoを作成できない | fifoを作成できない |
DBPLUS_ERR_PERM (integer) | ERR_PERM | 不許可 | |
DBPLUS_ERR_TCL (integer) | ERR_TCL | TCL_error | |
DBPLUS_ERR_RESTRICTED (integer) | ERR_RESTRICTED | ユーザ二人のみ | |
DBPLUS_ERR_USER (integer) | ERR_USER | アプリケーションプログラマによるライブラリの使用エラー | |
DBPLUS_ERR_UNKNOWN (integer) | ERR_UNKNOWN |