いくつかの Natural SQL ステートメントも Natural ビューの使用をサポートします。
Natural ビューをパラメータリストの代わりに指定できます。ビューの各フィールド(グループフィールド、再定義フィールド、および L@ や N@ の接頭文字付きフィールド以外)は 1 パラメータ(ホスト変数)に対応します。
名前に接頭文字 L@ や N@ が付加されたフィールドは、対応するマスタフィールド(同じ名前のフィールド)とともにのみ存在させることができます。
L@ フィールドは LINDICATOR フィールドに変換されます。
N@ フィールドは INDICATOR フィールドに変換されます。
L@ フィールドは、ビュー定義で、適用先のマスタフィールドの直前に指定してください。
DEFINE DATA LOCAL 01 PERS VIEW OF SQL-PERSONNEL 02 PERSID (I4) 02 NAME (A20) 02 N@NAME (I2) /* null indicator of NAME 02 L@ADDRESS (I2) /* length indicator of ADDRESS 02 ADDRESS (A50/1:6) 02 N@ADDRESS (I2) /* null indicator of ADDRESS 01 #PERSID (I4) END-DEFINE ... SELECT * INTO VIEW PERS FROM SQL-PERSONNEL WHERE PERSID = #PERSID ... END-SELECT
上記の例は下記の例と同等です。
...
SELECT *
INTO PERSID,
NAME INDICATOR N@NAME,
ADDRESS(*)INDICATOR N@ADDRESS LINDICATOR L@ADDRESS
FROM SQL-PERSONNEL
WHERE PERSID = #PERSID
...
END-SELECT
注意:
Natural for Windows、Natural for UNIX、または Natural for OpenVMS で VARCHAR データタイプにアクセスする際には、対応する長さインジケータ変数がビュー内に存在している必要があります。