|
2002年12月
マジックソフトウェア・ジャパン 株式会社
|
|
Oracle8/Oracle8i データベースゲートウェイ
Ver9.3-9.3a 追加情報
Magic eBusiness Platform
Ver9.30
|
|
|
|
|
|
本文書には、Magic eBusiness Platform(以下 Magic と表記)Oracle8/Oracle8i データベースゲートウェイ
Ver9.3-9.3a として提供されたプログラム(MGORA8.DLL)に関して、マニュアルの記載事項以外の追加情報が記述されています。
なお、文書中に記述されている"本プログラム"とは、"MGORA8.DLL"を示します。
|
|
|
使用条件
動作環境及び注意事項
制限事項及び留意事項
Oracleのロック機構のみを使用するときの注意事項
データベース情報での有効なパラメータ一覧
Oracle9iについて
Ver9.01-9.1の変更点
Ver9.01-9.2の変更点
Ver9.2-9.1の変更点
Ver9.3-9.3の変更点
Ver9.3-9.3aの変更点
|
|
|
|
|
|
使用条件
(Top)
|
|
|
|
|
|
動作環境及び注意事項
(Top)
サーバOS |
Microsoft Windows NT Server Ver4.0 SP6a
Microsoft Windows 2000 Server SP1 |
クライアントOS |
Microsoft Windows 2000 Professional SP1 |
DBMS |
Oracle8 WorkGroupServer for Windows NT 8.1.6.1.2
Oracle8 WorkGroupServer for Windows NT 8.0.5.0.0
Oracle 9i Database(9.0.1)for Windows NT/2000 Enterprise |
|
|
|
|
|
|
制限事項及び留意事項
(Top)
|
|
|
|
|
|
Oracleのロック機構のみを使用するときの注意事項
(Top)
物理トランザクションモードのプログラムにおいて、Magicのロックファイル(mglock.dat)を非共用にし Oracleの並行処理制御機能のみを使用する場合、テーブルのアクセス規制はOracleの排他制御に依存します。
注意すべき点は、共有モードがR(=読込)の時に、MagicはOracleのSHAREモードのロックをかけますが、このモードでは、MagicのRモードと異なり、他の端末から処理(W=書出)モードでのアクセス(ファイルのオープン)を許可することです。
その際、後の端末がレコードへの書き出しを行い、レコードロックをかけようとする時に、先に共有Rモード、すなわちSHAREモードでロックをかけた端末が終了しない限り、後の端末は待ちの状態が発生します。また下表の特定の場合によっては、先のSHAREモードの端末側でデッドロックが発生することがあります。
以下にアクセス規制を挙げます。
なお、下表は、処理A から先にアクセスされたテーブルに対して、処理Bが後からアクセスした場合のアクセス規制を示しています。
R/W はアクセスモード R (読込)、共有モード W (書出)を表しています。
トランザクション(タスクレベル)
|
処理A
|
処理B |
アクセスモード |
読込(R) |
書出(W) |
|
共有 |
読込(R) |
書出(W) |
なし(N) |
読込(R) |
書出(W) |
なし(N) |
読込(R) |
読込(R) |
|
|
T- |
注2 |
注2 |
T- |
書出(W) |
|
|
|
|
|
|
なし(N) |
T- |
|
T- |
注2 |
注2 |
T- |
書出(W) |
読込(R) |
注3 |
|
T- |
注2,3,4 |
注2,4 |
T- |
書出(W) |
注3 |
|
|
注3 |
注1 |
注1 |
なし(N) |
T- |
|
T- |
T- |
注2 |
T- |
注1: T+R- ですが、レコードロックが解除されるタイミングは処理AのPGを終了する時です。
注2: 処理A側でレコードに書込みを行うと、テーブルロックがかかります。
注3: レコードに書込みを行うと、処理Aがテーブルを閉じるまで黙り状態になることがあります。
注4: 処理Aでレコードの書込みを行う前に処理Bが実行された場合、いずれかでレコードの書込みのタイミングで「ORA-00060:デッドロック」のエラーが発生するか、フリーズすることがあります。
トランザクション(レコード前処理)
|
処理A
|
処理B |
アクセスモード |
読込(R) |
書出(W) |
|
共有 |
読込(R) |
書出(W) |
なし(N) |
読込(R) |
書出(W) |
なし(N) |
読込(R) |
読込(R) |
|
|
T- |
|
|
T- |
書出(W) |
|
|
|
|
|
|
なし(N) |
T- |
|
T- |
T- |
|
T- |
書出(W) |
読込(R) |
注1 |
|
T- |
注1 |
|
T- |
書出(W) |
注1 |
|
R- |
注1 |
|
R- |
なし(N) |
T- |
|
T- |
T- |
|
T- |
T-: テーブルアクセスに制限があります(テーブルがオープンできません)。
R-: レコードアクセスに制限があります(レコードロックがかかります)。
注1:処理Aで行移動したときに書き込みが行われます。
物理トランザクションモードで推奨する環境設定
[データベース]テーブルの[データベース特性] /[MAGICロック] |
「テーブル」 |
プログラムの[ロック方式] |
オンラインタスクは「入力時」 |
バッチタスクは「即時」 |
ロックパス |
環境ごとに違うロケーション |
データベース]テーブルの[データベース特性] /[MAGICロック] |
「両方」 |
プログラムの[ロック方式] |
オンラインタスクは「入力時」 |
バッチタスクは「即時」 |
ロックパス |
全てのMagicで同じロケーション |
共有モードW |
(ロックコマンドは発行されません) |
共有モードR |
lock table ... in share mode |
共有モードN |
lock table ... in exclusive mode |
入力時(即時)ロック |
select ... for update |
※共有モードW/Rを有効にするには、トランザクション開始をタスク前の前に設定する必要があります。
|
|
|
|
|
|
データベース情報での有効なパラメータ一覧
(Top)
[設定]/[DBMS]
[設定]/[データベース]/[データベース特性]
テーブル特性
インデックス特性
|
|
|
|
|
|
Oracle9iについて
(Top)
Oracle8の互換機能にて評価しました。Oracle9iからの新機能は、未確認です。
表領域を作成する場合、テーブル特性/SQLデータベース情報欄に設定可能であるEXTENTパラメータ等が無効になることがあります。
この場合、表領域に対して、EXTENT MANAGEMENT DICTIONARY パラメータを付加して作成することにより可能になります。このパラメータの仕様については、Oracle9iのマニュアルを御覧下さい。
|
|
|
|
|
|
Ver9.01-9.1の変更点
(Top)
MAGIC SQL パラメータの式では、以下の関数がサポートされました。
MOD, LOG, CHR, ASC, TIME, HOUR, MINUTE, SECOND, DSTR, TSTR, ADDDATE
|
|
|
|
|
|
Ver9.01-9.2の変更点
(Top)
|
|
|
|
|
|
Ver9.2-9.1の変更点
(Top)
|
|
|
|
|
|
Ver9.30-9.3の変更点
(Top)
|
|
|
|
|
|
Ver9.30-9.3aの変更点
(Top)
|
|
|
以上
|
|
|
|
|