Paradox (データベース)

Paradox（パラドックス）は、現在はコーレルが保守している関係データベース管理システム (RDBMS) 。DOS版は Ansa Software が開発し、Windows版はボーランドが1992年にリリースした。 Paradox for DOS は、Richard Schwartz と Robert Shostak が開発したRDBMSで、1985年に彼らが創業した Ansa Software がリリースした。1987年9月、ボーランドが Ansa Software を買収し、Paradox/DOS 2.0 も入手した。3.5までは1.0からの拡張だが、4.0と4.5は Borland C++ で書き直されてGUI対応し、拡張メモリアクセス方法も変更されている。 Paradox/DOS は1980年代末から1990年代初めにかけてそれなりに成功を収めた。当時は dBASEとそのクローンである xBase（FoxPro、Clipper）が市場を占めていた。その他の競合製品としては、Clarion、DataEase、R:Base、Dataflexなどがある。 Paradox/DOS の特筆すべき機能は以下の通り。 AIエンジンによる視覚的な 例示による問い合わせ (QBE, Query by Example) 実装。 メモリ利用の効率性 - テーブルやインデックスをキャッシュすることで、最適化に技量を要する xBase に比べて高速化が簡単である 画期的なプログラミング言語 Paradox Application Language (PAL) が使える。 テキストユーザインタフェースのメニューやウィンドウがデフォルトのインタフェースである（dBASEはコマンド行インタフェースがデフォルトで、その上に複雑なメニュー層を実装していた）。 Paradox for Windows は別の開発チームが開発した全く異なる製品である。DOS版の特徴である QBE やデータベースエンジンはDOSからほぼそのまま移植されているが、言語が PAL から ObjectPAL に変わり、フォームおよびレポートの作成にGUIが導入された。ObjectPAL は議論の的となったが、PAL はキー押下を記録することに基づいていたため Windows では全く異なる方式が必須だった。代わりにHyperCardのアイデアに基づいたオブジェクトベースの言語とした。フォーム及びリポートの設計には、デバイス独立なスケーリングを使い、詳細レイアウトのためにズーム可能である。AltoとSmalltalkにならってマウスの右クリックでフォームとレポートに関するプロパティにアクセスできる。これは最近のWindowsプログラムでは一般的なインタフェースである。ObjectPALは視覚的オブジェクトと対応していて、やはり右クリックで見ることができる。プロパティ表示とレイアウトツールは画面上に固定することができる。これはNeXTにならったもので、今ではWindowsプログラムで一般的である。 当初の開発ではC言語でマクロを駆使してオブジェクト指向的なコードを書いていた。その後 Turbo C++ が利用可能になると、残りはC++で書くようになった。1.0リリースまでの製品マネージャは Joe Duncan だった。開発及び品質保証を含めてチームは総勢30名だった。 Paradox for Windows は Quattro Pro for Windows と密接に連携したプロジェクトで、1990年春から Windows 3.0 のベータ版を使って開発がスタートした。当初の計画より1年間開発が遅れ、1993年初めごろリリース可能となった。遅れた要因は色々あるが、大幅な書き換えであったこと、オブジェクト指向を初めて採用したこと、GUIを導入したこと、新しいオペレーティングシステムを使ったことなどが考えられる。この遅延により、マイクロソフトはAccessをParadoxの数ヶ月前に出荷でき、市場での勝利を得た。 1990年、ボーランドは DOS および Windows 向けの xBase も開発しており、1992年に出荷を予定していた。1992年初めごろ、アシュトンテイトがWindows版の開発が困難な状況に陥ったのを知り、ボーランドは計画を変更してアシュトンテイトを買収し、dBASE の公式な後継を出荷することにした。アシュトンテイト買収にともなってInterBaseを入手したため、ボーランドは Paradox/Windows がInterBaseのデータベースにもアクセスできるようにすることを決め、データベースエンジンとのインタフェースとしてIDAPIを策定した。 この買収によって方針転換が必要になった。Paradox はこれまで dBASE と競合しており、Paradox/Windows は開発者指向の市場にシフトすることで dBASE とは異なる方向を目指す方針だった。しかし dBASE を入手したためその方針は適切ではなくなり、より一般の使いやすさを指向した市場を目指すことになった。しかし、既に開発はかなり進んでいて、そこからエントリーレベル市場に転換することは不可能だった。Access は1992年のクリスマスにリリースされ、その市場を獲得した。それでも Paradox/Windows は健闘した。しばらくするとボーランドではアシュトンテイト買収による悪影響が出始めた。多くの製品開発が中止され、痛みを伴うリストラが敢行され、買収の中心であった dBASE プロジェクトも技術的理由で中止となり、ボーランドの売り上げが低下し、早急な dBASE for Windows の開発が必要となった。ボーランドは幅広い製品を販売するだけの体力を失った。dBASE for Windows がリリースされたときに置換するという方針で Paradox は積極的にはマーケティングされなかった。dBASE for Windows は1994年にリリースされたが、既に時期を逃していた。 Microsoft Access は Paradox/Windows よりもずっと低価格で、Word、Excel、PowerPointと共に Microsoft Office Professional の一部としても販売された。しかも、FoxPro開発チームの貢献によって性能もよかった。その後のバージョンで使いやすさを改善していったにもかかわらず、Paradox は徐々にシェアが減っていった。Paradox は他のボーランド製品と共にWordPerfect社に売却され、WordPerfect の製品として販売され、さらにコーレルが取得してオフィススイートの一部として販売するようになった。dBASE for Windows は出荷があまりにも遅かったため、dBASEおよびxBaseユーザーは既にほぼ同じインタフェースの Microsoft FoxBase に移行していた。ボーランドはInterBase/IDAPIサーバを保持しており、Delphiツール開発に注力するようになり、一部市場では今も根強い人気がある。 コーレルは1990年代中ごろに Paradox の権利を取得し、1997年に Corel Paradox 8 をリリースした。WordPerfect Office スイートの Professional Edition にも Paradox をバンドルしている。最新版は 11.0.0.676 で、Office X4 Hot Fix 1 および X5 Hot Fix 1 にバンドルされている。 Paradox には多数のユーザーがいて（外部リンクにある） Paradox Community やニュースグループを中心に活動している。彼らの多くはPC用DBMSとしては Paradox が一番優れていると信じている。 Paradox/Windows のプログラミング言語 ObjectPAL のファンも多いが、PAL/DOSスクリプトからの移行は容易ではない。オブジェクトやイベントのモデルが全く異なるので、PALからObjectPALへの移行にはアプリケーションの全面的な書き換えが必要になる。 XBase dBASE ^ ただし、メモリ管理は初期のVCPI準拠であり、Paradox 4.5 はDOSエミュレータや Windows 95 などの仮想DOS環境では動作できない。 ^ “ボーランド、データベース製品の開発権などをコーレルに移行”. PC Watch (1996年10月23日). 2012年5月3日閲覧。 上記のVCPI標準は Paradox DOS版 3.5 かそれ以前に対応し、それらは Windows では動作しない。Paradox DOS 4.0 および 4.5 は Windows 2000 以外の Windows で動作可能。Windows 2000 では対応不能なエラーが2種類発生する。 Paradox Community Paradox ObjectPAL code snippets Paradox File Format pxlib Paradoxのデータベースを読み書きするライブラリ pxtools ParadoxのデータベースをSQLデータベースに変換するツール Paradox Converter Paradoxのテーブルを他の形式に変換するツール Paradox DB file viewer