ページの先頭行へ戻る
Linkexpress Replication option 説明書
FUJITSU Software

2.5.1 表単位のレプリケーションでのDBサービス定義

表単位のレプリケーションでは、以下の定義文が必要です。

表単位のレプリケーションでのDBサービス定義の方法を、以下の運用例に基づいて説明します。

なお、ここで説明するもの以外にもDBサービス定義の定義項目は存在します。詳細については、“6.34.1 lxgensvコマンド”ならびに“Linkexpress 運用ガイド”を参照してください。

レプリケーション運用例

  

2.5.1.1 INTABLE定義文

レプリケーション運用例でのINTABLE定義文の記述例を以下に示します。

内容および形式の詳細については、“Linkexpress 運用ガイド”を参照してください。

INTABLE定義文の記述例

INTABLE
      NAME = INEMPLY                                                     → 1
      DATATYPE = (local,non-attribute add null field)                    → 2
      CODE = euc-s90                                                     → 3
      ITEM = ((@DBOP,sint except null field),
              (ITEM1,sint),
              (ITEM2,nchar(10)),
              (ITEM3,nchar(5)))                                          → 4
      FILE = /home/work/indata                                           → 5

以下にINTABLE定義文のオペランドの指定時に注意すべき点を説明します。各オペランドの番号は、記述例の番号と対応します。

  1. NAMEオペランド(INTABLE識別名

    INTABLE識別名を指定してください。

  2. DATATYPEオペランド(入力データの種別および形式

    入力データの種別には、“local”を指定してください。

    入力データの形式には、複写元システムの抽出定義で指定したNULLINDオペランドの値に従って指定してください。

  3. CODEオペランド(入力データのコード系

    複写元システムで抽出したコード系を指定します。抽出定義のOUTCODEオペランドの値に従って指定してください。

    注意

    CODEオペランドにunicodeを指定した場合には、UNICODE_TYPEオペランドの指定が必要です。

  4. ITEMオペランド(入力データ項目名および形式

    抽出される差分データの形式に従ってください。

    以下に複写元システムで抽出される差分データのレコード形式とITEMオペランドでの指定形式について説明します。

    • 抽出レコード形式

      レコードの形式にはナル表示域あり(抽出定義でNULLIND=YESを指定)と、ナル表示域なし(抽出定義でNULLIND=NOを指定)の2種類があります。

      レコードの構成を以下に示します(コード系をEUCまたはシフトJIS(MS)、数値の表現形式を前進法で示します。)。

      1. 差分反映操作(長さ:2バイト、属性:SMALLINT)

        0x0000:全件抽出

        0x0001:追加差分

        0x0002:更新差分

        0x0003:削除差分

        0xffff:抽出件数が0件の全件抽出

      2. ナル表示域 (長さ:2バイト、属性:SMALLINT)

        0x0000:ナル値でない

        0xffff:ナル値

        ナル表示域なしのレコードの場合および抽出件数が0件の全件抽出の場合、本フィールドは存在しません。

      3. データ項目 (長さ:データ型によって異なります)

        各項目のデータが抽出されます。

        詳細は、“付録B 抽出データ項目の形式”を参照してください。

        抽出件数が0件の全件抽出の場合、本フィールドは存在しません。

    • ITEMオペランドでの指定形式

      • 差分反映操作

        “@DBOP,sint except null field”と指定してください。

        DATATYPEオペランドの入力データの形式でナル表示域の有無に“except null field”を指定した場合、“@DBOP,sint”だけの指定も可能です。

      • 各データ項目の属性

        付録B 抽出データ項目の形式”を参照してください。

      • 各データ項目のナル表示域の有無

        DATATYPEオペランドで入力データの形式を指定した場合はナル表示域の有無をITEMオペランドで指定する必要はありません。

        DATATYPEオペランドの入力データの形式を指定していない場合は、以下のように指定します。

        ナル表示域ありのレコードの場合:add null field

        ナル表示域なしのレコードの場合:except null field

  5. FILEオペランド(入力ファイル名

    格納処理の入力ファイル名(受信ファイル名)を指定してください。

2.5.1.2 OUTTABLE定義文

レプリケーション運用例でのOUTTABLE定義文の記述例を以下に示します。

内容および形式の詳細については、“Linkexpress 運用ガイド”を参照してください。

OUTTABLE定義文の記述例

OUTTABLE
      NAME = OUTEMPLY                                                    → 1
      DATATYPE = (database,symfoware/rdb)	                            → 2
      EXTRACT = EXTEMPLY                                                 → 3
      CODE = euc-s90                                                     → 4
      DATABASE = 仙台社員管理データベース	                            → 5
      SCHEMA = 仙台社員スキーマ                                          → 6
      TABLE = 仙台社員表                                                 → 7
      ITEM = (@DBOP,社員番号,名前,支店名)                                → 8
      LOADMODE = (difference,load)                                       → 9

以下にOUTTABLE定義文のオペランドの指定時に注意すべき点を説明します。各オペランドの番号は、記述例の番号と対応します。

  1. NAMEオペランド(OUTTABLE識別名

    OUTTABLE識別名を指定してください。

  2. DATATYPEオペランド(出力データの出力先およびデータベース・システムの種類

    データの出力先には、“database”を指定してください。

    データベース・システムの種類は、Symfoware/RDB間のレプリケーションでは“symfoware/rdb”を指定してください。

  3. EXTRACTオペランド(EXTRACT識別名

    EXTRACT識別名を指定してください。

  4. CODEオペランド(出力データのコード系

    複写先データベースに格納するデータのコード系を指定してください。

    注意

    CODEオペランドにunicodeを指定した場合には、UNICODE_TYPEオペランドの指定が必要です。

  5. DATABASEオペランド(格納先データベース名

    複写先データベースのデータベース名を指定してください。

  6. SCHEMAオペランド(格納先スキーマ名

    複写先データベースの格納先のスキーマ名を指定してください。

  7. TABLEオペランド(格納先表名

    複写先データベースの格納先の表名を指定してください。

  8. ITEMオペランド(格納先表の列名

    格納先の表の列名を指定してください。

    INTABLE定義文のITEMオペランドの入力データ項目名が複写先データベースの表の列名と同じ場合は、本オペランドを省略することができます。

  9. LOADMODEオペランド(格納方式および格納方法

    格納方式には、全複写、一括差分複写を問わず、“difference”を指定してください。

    格納方法には、“load”または“insert”を指定してください。

注意

DSI単位の格納についての注意点

複写先データベースの表をDSI分割し、全複写をDSI単位に行う場合は、OUTTABLE定義文のDSIオペランドに格納先のDSI名を指定してください。

WindowsSolarisなお、Linkexpress for Windows NT V1.1L11以前およびSolaris版Linkexpress 1.0.2以前のLinkexpressでは、OUTTABLE定義文にDSIオペランドを指定することができません。環境変数“LXDBTARGET”を使用してください。

DSIオペランド指定時の注意点

DSIオペランド(または環境変数“LXDBTARGET”)を指定する場合、LOADMODEオペランドの格納方式に“difference”、格納方法には“load”を指定してください。

2.5.1.3 EXTRACT定義文

レプリケーション運用例でのEXTRACT定義文の記述例を以下に示します。

内容および形式の詳細については、“Linkexpress 運用ガイド”を参照してください。

EXTRACT定義文の記述例

EXTRACT
      NAME = EXTEMPLY                                                    → 1
      INTABLE = INTEMPLY                                                 → 2
      CONVERT = on                                                       → 3
      SELECT = *                                                         → 4

以下にEXTRACT定義文のオペランドの指定時に注意すべき点を説明します。各オペランドの番号は、記述例の番号と対応します。

  1. NAMEオペランド(EXTRACT識別名

    EXTRACT識別名を指定してください。

  2. INTABLEオペランド(INTABLE識別名

    INTABLE識別名を指定してください。

  3. CONVERTオペランド(データ編集の実施の有無

    “on”を指定してください。

  4. SELECTオペランド(抽出・編集するデータ項目の指定

    抽出・編集するデータ項目を指定してください。

    INTABLEオペランドで指定した全入力データ項目を選択する場合、“*”を指定するか、本オペランドを省略してください。