順ファイル、相対ファイル、索引順ファイルに対してFILLER部分にSPACE/HIGH-VALUE/LOW-VALUEを格納した際の書き込み、読み込みを行った場合どのようになりますか?エラー等は?
(Xタイプ、9タイプ、Nタイプに対してOracle、SQL Serverには何が格納されるでしょうか?
SPACE/HIGH-VALUE/LOW-VALUEが指定された場合ですが、COBOL側のデータ型がどうなっているかはともかく、「RDB表のデータ型/列名規則によって決定されたCOBOLデータ型」によって、以下の通りのデータが格納されたものとして動作します。
1)COMP-1,COMP-2以外の数字項目に指定された場合
LOW-VALUE/SPACE -> 0 が指定されたものと解釈します。
HIGH-VALUE -> この項目に格納できる一番大きな数字が指定
されたものと解釈します。
2)CHAR,VARCHAR(SQL Server),VARCHAR2(Oracle)型の文字項目に指定された場合
LOW-VALUE/SPACE -> 半角スペースが指定されたものと解釈します。
HIGH-VALUE -> 0xFC が指定されたものとして解釈します。
ただし、長さが奇数の場合は末尾 1バイトに
0xDF が指定されたたものとして解釈します。
また、SPACE/HIGH VALUE/LOW VALUE のデータをWRITEした後にREADする場合ですが、WRITE時点で上記の通りに変換されてDBに格納されていますので、当然上記の通りに変換されたものがREADできます。
# SPACE/HIGH-VALUE/LOW-VALUEを格納しても、SPACE/HIGH-VALUE/LOW-VALUE
として取り出せないことがあることに注意してください。
また、たとえば 数字項目に0を格納したデータは、LOW-VALUE のような
条件では検索されないことがあることにも、ご注意下さい。