ページの先頭行へ戻る
Interstage Business Application Server 運用ガイド(高信頼性ログ編)
FUJITSU Software

4.3 ユーザログテーブルの作成方法

ここでは、定義ファイルからユーザログテーブルを作成する方法を示します。

rdbddlexコマンドでは、物理構造、論理構造、および格納構造を定義することができます。手順としては、最初に、rdbddlexコマンドで使用する定義ファイルを作成します。そのあとで、rdbddlexコマンドを実行します。

なお、定義ファイルのパス名およびファイル名は、任意の名前で指定可能です。指定可能なファイル名長は“Interstage Business Application Server リファレンス”を参照してください。

また、rdbddlexコマンドのdオプションは、SQL文によって省略することができます。詳細は“Interstage Business Application Server リファレンス”を参照してください。

参照


rdbddlexコマンドで使用する定義ファイルは、/opt/FJSVibs/sample/ulog/ddl.datを複写し、作成したテキストファイルに定義します。定義の内容は、業務内容に応じて編集してください。

rdbddlexコマンドの定義ファイルの記述形式

rdbddlexコマンドの定義ファイルを記述する文法の一般形式を以下に示します。

形式

1つのSQL文の終わりには終了子“;”を指定することが必要です。

CREATE   DATABASE   ULOG_DB    ;
                               ↑
                          終了子の指定

定義ファイルからデータベースを作成する例を図:定義ファイルからデータベースを作成する例に、定義ファイルの例を図:定義ファイルの例に示します。

注釈は、連続した2個のハイフン“--”で記述することができます。“--”以降その行の右終端までが注釈とみなされます。

:定義ファイルからデータベースを作成する例

/opt/FJSVibs/sample/ulog/ddl.datを、/home/rdb/DDL/ddl.datに複写した場合

rdbddlex    -d    ULOG_DB           /home/rdb/DDL/ddl.dat
                 ↑                           ↑
          データベース名指定           定義ファイル指定

rdbddlex    -d    ULOG_DB           C:\USERS\DEFAULT\DDL.DAT
                 ↑                           ↑
          データベース名指定           定義ファイル指定
:定義ファイルの例

/home/rdb/DDL/ddl.dat

-- Define a database named "ULOG_DB"
CREATE DATABASE ULOG_DB;

-- Define a database space named "DBSP_1"
CREATE DBSPACE DBSP_1 ALLOCATE RAWDEVICE /dev/rdsk/c0t10d0s3;
-- Define a database space named "DBSP_2"
CREATE DBSPACE DBSP_2 ALLOCATE RAWDEVICE /dev/rdsk/c0t10d0s6;
-- Define a database space named "DBSP_3"
CREATE DBSPACE DBSP_3 ALLOCATE RAWDEVICE /dev/rdsk/c0t10d0s7;

-- Define a schema named "ULOG"
CREATE SCHEMA ULOG COMMENT 'ULOG TABLE'

   -- Define a table named "ULOG_TABLE"
   CREATE TABLE ULOG_TABLE
          (LOG_TYPE        CHAR(1)    DEFAULT    LOG_TYPE,
           SEQUENCE_NO     CHAR(30)   DEFAULT    ULOG_SEQUENCE,
           TRANSACTION_ID  CHAR(20)   DEFAULT    TRANSACTION_ID,
           SYSTEM_NAME     CHAR(8)    DEFAULT    SYSTEM_NAME,
           CONTEXT_ID      VARCHAR(1024),
           分割キー        CHAR(10)   NOT NULL,
           任意列1         DECIMAL(4,0),
           任意列2         VARCHAR(5),
           ユーザログ本文  BLOB(50K));

-- Define a ULOG_TABLE table storage structure
CREATE DSO ULOG_DSO                                -- ULOG_TABLE table DSO
    FROM ULOG.ULOG_TABLE
        TYPE CYCLIC(PAGESIZE(32),CYCLIC_MODE(0));

CREATE DSI ULOG_DSI                                -- ULOG_TABLE table DSI
    DSO ULOG_DSO
        ALLOCATE DATA ON (DBSP_1,DBSP_2,DBSP_3) ENTRYSIZE 15M;

-- Define a database named "ULOG_DB"
CREATE DATABASE ULOG_DB;

-- Define a database space named "DBSP_1"
CREATE DBSPACE DBSP_1 ALLOCATE RAWDEVICE /dev/raw/raw1;
-- Define a database space named "DBSP_2"
CREATE DBSPACE DBSP_2 ALLOCATE RAWDEVICE /dev/raw/raw2;
-- Define a database space named "DBSP_3"
CREATE DBSPACE DBSP_3 ALLOCATE RAWDEVICE /dev/raw/raw3;

-- Define a schema named "ULOG"
CREATE SCHEMA ULOG COMMENT 'ULOG TABLE'

   -- Define a table named "ULOG_TABLE"
   CREATE TABLE ULOG_TABLE
          (LOG_TYPE        CHAR(1)    DEFAULT    LOG_TYPE,
           SEQUENCE_NO     CHAR(30)   DEFAULT    ULOG_SEQUENCE,
           TRANSACTION_ID  CHAR(20)   DEFAULT    TRANSACTION_ID,
           SYSTEM_NAME     CHAR(8)    DEFAULT    SYSTEM_NAME,
           CONTEXT_ID      VARCHAR(1024),
           分割キー        CHAR(10)   NOT NULL,
           任意列1        DECIMAL(4,0),
           任意列2        VARCHAR(5),
           ユーザログ本文  BLOB(50K));

-- Define a ULOG_TABLE table storage structure
CREATE DSO ULOG_DSO                                -- ULOG_TABLE table DSO
    FROM ULOG.ULOG_TABLE
        TYPE CYCLIC(PAGESIZE(32),CYCLIC_MODE(0));

CREATE DSI ULOG_DSI                                -- ULOG_TABLE table DSI
    DSO ULOG_DSO
        ALLOCATE DATA ON (DBSP_1,DBSP_2,DBSP_3) ENTRYSIZE 15M;

-- Define a database named "ULOG_DB"
CREATE DATABASE ULOG_DB;

-- Define a database space named "DBSPACE1"
CREATE DBSPACE DBSPACE1 ALLOCATE FILE C:\SFWD\RDB\USR\DBSP\DATABASE_SPACE1 ATTRIBUTE SPACE(3M);
-- Define a database space named "DBSPACE2"
CREATE DBSPACE DBSPACE2 ALLOCATE FILE C:\SFWD\RDB\USR\DBSP\DATABASE_SPACE2 ATTRIBUTE SPACE(3M);
-- Define a database space named "DBSPACE3"
CREATE DBSPACE DBSPACE3 ALLOCATE FILE C:\SFWD\RDB\USR\DBSP\DATABASE_SPACE3 ATTRIBUTE SPACE(3M);

-- Define a schema named "ULOG"
CREATE SCHEMA ULOG COMMENT 'ULOG TABLE'

-- Define a table named "ULOG_TABLE"
CREATE TABLE ULOG_TABLE
(LOG_TYPE CHAR(1) DEFAULT LOG_TYPE,
SEQUENCE_NO CHAR(30) DEFAULT ULOG_SEQUENCE,
TRANSACTION_ID CHAR(20) DEFAULT TRANSACTION_ID,
SYSTEM_NAME CHAR(8) DEFAULT SYSTEM_NAME,
CONTEXT_ID VARCHAR(1024),
分割キー CHAR(10) NOT NULL,
任意列1 DECIMAL(4,0),
任意列2 VARCHAR(5),
ユーザログ本文 BLOB(50K));

-- Define a ULOG_TABLE table storage structure
CREATE DSO ULOG_DSO -- ULOG_TABLE table DSO
FROM ULOG.ULOG_TABLE
TYPE CYCLIC(PAGESIZE(32),CYCLIC_MODE(0));

CREATE DSI ULOG_DSI -- ULOG_TABLE table DSI
DSO ULOG_DSO
ALLOCATE DATA ON (DBSPACE1,DBSPACE2,DBSPACE3) ENTRYSIZE 3M;