ページの先頭行へ戻る
Interstage Application Server/Interstage Web Server Java EE運用ガイド
Interstage

D.1.7 CMP Entity Beanでサポートするデータベース

連携するデータベースによってサポートされるCMP Entity Beanの機能が異なります。
詳細は、以下の表を参照してください。(Java DBはアプリケーション開発時のみ使用してください)

機能名

Symfoware

Oracle

Microsoft(R) SQL Server(TM)

PowerGres Plus

Java DB

deployment descriptorによるマッピングの定義

テーブル自動生成機能

△(注3)

スキーマ情報ファイルの自動生成機能

Javaのデータ型とDBMSのSQLデータ型のマッピング

SQLログ機能

EJB 1.1のCMP Entity Beanのfinderメソッドの検索条件定義の指定

CMP2.x EJB QL(注1)

CMPデータのstream転送 (注2)

△(注4)

CMPの複数レコードの一括更新(注2)

CMPの一括挿入(注2)

検索時のロック機能

△(注5)

○:サポート
△:一部サポート
×:未サポート

(注1)EJB QLについてはEJB規約を参照してください。また、データベースの仕様により利用できないEJB QLの機能があります。各データベースのマニュアルも合わせて参照してください。
(注2)本機能は自動で切り替わります。
(注3)Symfowareではリレーションを持つテーブルを自動生成する場合、Entity Beanに対応するテーブル、Joinテーブル、外部キーカラムは作成されますが外部キー制約(FOREIGN KEY制約)は作成されません。
(注4)SymfowareではBLOB型のカラムにマッピングしたCMFのデータのみstream転送を行います。
(注5)Symfowareではリレーションを持つテーブルに対して検索時のロック機能は使用できません。


CMP Entity Beanがサポートするデータベースのバージョンについては、「システム設計ガイド」-「ソフトウェア条件」-「アプリケーション実行時に必要なソフトウェア」-「データベース関連(Java EE)」を参照してください。

ただし、CMP Entity BeanでサポートするSymfowareのバージョンは以下となります。

項番

プラットフォーム

サポートするJDBCドライバ

バージョン・レベル

1

Windows(R)

Symfoware Serverクライアント機能

10.0.0以降

2

Solaris

Symfoware Serverクライアント機能

10.0.0以降

3

RHEL5(x86)/(Intel64)

Symfoware Serverクライアント機能

10.0.0以降


D.1.7.1 CMPデータのstream転送

CMP Entity Beanで定義する永続化フィールド(CMF)のJavaのデータ型とデータベースのSQLデータ型を以下の組み合わせでマッピングした場合、EJBコンテナは自動で以下のAPIを使用してStream転送によってデータやり取りします。

CMFのJavaのデータ型

SQLデータ型

EJBコンテナが使用するJDBCドライバのAPI

java.lang.String

CLOB
LONGVARCHAR

setCharacterStream

getCharacterStream

byte[]

BLOB

setBinaryStream
getBinaryStream


Javaのデータ型とデータベースのSQLデータ型の組み合わせについてはJDBCドライバの仕様に依存しますので、使用するJDBCドライバのマニュアルを参照してください。

D.1.7.2 CMPの複数レコードの一括更新、一括挿入

同一トランザクション内で複数レコードに対する更新、または、複数レコードを挿入する処理を行った場合、EJBコンテナはトランザクション完了時にそれらの処理をひとつのSQL文にまとめて一括で更新・挿入処理を行います。

参照

CMPの複数レコードの一括更新、一括挿入はStream転送を行うデータに対しては行いません。Stream転送については「CMPデータのstream転送」を参照してください。

注意

CMPの複数レコードの一括更新、一括挿入は使用しているJDBCドライバがバッチ更新をサポートしている必要があります。使用するJDBCドライバがバッチ更新をサポートしていない場合、更新または挿入処理ごとにSQL文を発行します。

JDBCドライバのバッチ更新のサポート状況については各データベースのマニュアルを参照してください。