Symfoware Server アプリケーション開発ガイド(埋込みSQL編) - FUJITSU - |
目次 索引 |
第3章 アプリケーションの作成 | > 3.2 SQL埋込みCOBOLプログラムの作成方法 |
アプリケーションの文字コード系をUNICODEで動作させる場合、日本語項目の表現形式はUCS-2のリトルエンディアン形式となります。
以下の富士通COBOL製品を使用した場合、コンパイル時にUCS-2の形式としてビッグエンディアン形式を選択することができます。
NetCOBOL Enterprise Edition V8.0以降
レコード順ファイルや相対ファイルを使用して、アプリケーションにデータの入出力を行う場合、ファイルの日本語項目の表現形式は、アプリケーションのコンパイル時に指定した形式と同じになります。
コンパイル時にUCS-2の形式をビッグエンディアン形式にすることで、レコード順ファイルや相対ファイルのデータがUCS-2のビッグエンディアン形式となり、他のプラットフォームと共通で使用可能となる利点があります。
以下に、UCS-2のビッグエンディアン形式を使用する場合のコンパイル例を示します。
sqlcobolを使用する場合
sqlcobol -RCS BE demoU01main.scob -M -o ../bin/demo01 |
sqlpcobを使用する場合
sqlpcob -RCS BE demoU01main.scob cobol -WC,"RCS(UCS2,BE)" -M -o ../bin/demo01 demoU01main.cobol -L/opt/FJSVrdb2b/lib -lsqldrv |
プレコンパイルとコンパイルを別々に実行する場合は、COBOLコンパイラにRCSオプションを必ず指定してください。また、複数のコンパイル単位から構成されるアプリケーションは、すべて同じRCSオプションを指定してコンパイルしてください。
例
レコード順ファイルを使用したプログラム例を以下に示します。コンパイル時にUCS-2の形式をビッグエンディアン形式にすることで、プログラム内にエンディアンを意識した処理を入れることなく、共通のデータファイルを使用可能になります。
000100 IDENTIFICATION DIVISION. 000200 PROGRAM-ID. R-INS001. 000300 ENVIRONMENT DIVISION. 000400 INPUT-OUTPUT SECTION. 000500 FILE-CONTROL. 000600 SELECT FILE001 000700 ASSIGN TO "./FILE0001". 000800 DATA DIVISION. 000900 FILE SECTION. 001000 FD FILE001. 001100 01 RECORD01. 001200 02 FNCOL01 PIC N(5). 001300 WORKING-STORAGE SECTION. 001400 EXEC SQL BEGIN DECLARE SECTION END-EXEC. 001500 01 SQLSTATE PIC X(5). 001600 01 SQLMSG PIC X(255). 001700 01 HOST1 PIC N(10). 001800 EXEC SQL END DECLARE SECTION END-EXEC. 001900* 002000 PROCEDURE DIVISION. 002100* 002200* 002300* CONNECT 002400 EXEC SQL 002500 CONNECT TO DEFAULT 002600 END-EXEC. 002700 DISPLAY "PTST:SQLMSG : " SQLMSG 002800 002900* SELECT 003000 EXEC SQL 003100 SELECT COL1 INTO :HOST1 FROM S.T1 003200 WHERE COL1= 100 003300 END-EXEC. 003400 DISPLAY "PTST:SQLMSG : " SQLMSG 003500 003600* COMMIT 003700 EXEC SQL 003800 COMMIT WORK 003900 END-EXEC. 004000 DISPLAY "PTST:SQLMSG : " SQLMSG 004100 004200* DISCONNECT 004300 EXEC SQL 004400 DISCONNECT DEFAULT 004500 END-EXEC. 004600 DISPLAY "PTST:SQLMSG : " SQLMSG 004700 004800 OPEN OUTPUT file001. 004900 WRITE RECORD01 FROM HOST1. 005000 CLOSE FILE001. 005100 005200 EXIT PROGRAM. 005300
目次 索引 |