ホーム
製品情報
ソフトウェア受託開発
システム構築例
コラム
会社案内
お問合せ
  コラム > Oracleデータベース+アプリケーションサーバーによるインフラ構築
 
 
       

Oracleデータベース+Oracleアプリケーション
サーバーによるインフラ構築

2007/3/9 牧野敏行

1つのサーバーと「Oracle Database 10g」、「Oracle Application Server 10g」を準備すれば
Webを使用したシステムのインフラが簡単に、安価に構築できる
開発言語としては最初はPL/SQL を薦める
PL/SQL は データベース言語のSQLとベーシックを合わせたような言語で、「PL/SQL Web
Toolkit」を使用すればデータベースのデータをWebに公開する単純なソフトはわずか5行で
記述できる
「PL/SQL Web Toolkit Reference」より
create or replace procedure showemps is
 ignore_more boolean;
begin
 ignore_more := owa_util.tablePrint(’emp’, ’BORDER’, OWA_UTIL.PRE_TABLE);
end;
上記は一番簡単な例だがかなり複雑なアプリケーションも構築できる
私は以前の会社で約10年間情報システム刷新の仕事に携わり、その間に20のデータベース、
PL/SQLを主体としたイントラネットシステム(90パッケージ、90Kステップ)を開発してきた
当初は参照系のシステムが多かったが、徐々に更新系のシステムが多くなった
但し、PL/SQLでは他のソフトを起動したり、バイナリィデータを扱うことが出来ないので、例えば
データベースのデータを印刷用にExcelマクロで読み込み、ダウンロードするような
アプリケーションが構築できない (CSVでのダウンロードまでは可能)
Excelを使用するとサーバーがWindowsサーバーに限定されてしまうが、生産管理の
ガントチャートのようにA0サイズの用紙に安価に奇麗に印刷するのはExcelが最も簡単だった
PL/SQLでは実現できない用途にはJavaサーブレットを併用するようにしている
Java言語の開発は若干敷居が高いが、開発環境として無償のEclipseが使用でき、また
サーブレットのみで使用する分にはC++にかなり近い
「Oracle Application Server 10g」には「OC4J」というJavaの実行環境も含まれている
開発したPL/SQLを使用したシステム
ユーザ、機器管理、BOM、図面検索、受注伝票等の各種伝票検索(PDFジェネレータ
使用)、製品来歴管理、会議室、スケジュール、PDM*1、ワークフロー*1、
仕様書手配*1、生産管理*1             *1は Javaとの混合開発
長所はOracle製品のサポート契約を締結しておけばバージョンアップの費用が発生しない
また、当初の Oracle7 → 8 → 9i → 10g と順次更新してきたがスムーズに移行できてきた
修正が必要な部分は毎回1、2点あったが・・
互換性が守られているのは長年システムを使用していく上で大変ありがたい
難をいえば、PL/SQLはプログラム言語としては機能が不足する事、またデバックが昔ながらの
Print文を埋め込む方法しかないこと・・などである