前のページ|次のページ

ATTRN関数

SASデータセットの数値属性の値を返します。

カテゴリ: SASファイルI/O

構文

必須引数

data-set-id

OPEN関数が返すデータセット識別子を指定します。

attribute-name

数値が返されるSASデータセットの属性の名前です。attribute-nameの値が無効な場合、欠損値が返されます。次のリストに、SASデータセットの属性名とその値を示します。

ALTERPW

データセットの変更時にパスワードが要求されるかどうかを示します。

1 データセットは変更保護されています。
0 データセットは変更保護されていません。

ANOBS

オブザベーション数がエンジンで認識されているかどうかを示します。

1 オブザベーション数がエンジンで認識されています。
0 オブザベーション数がエンジンで認識されていません。

ANY

データセットにオブザベーションまたは変数があるかどうかを示します。

−1 データセットにオブザベーションまたは変数がありません。
0 データセットにオブザベーションがありません。
1 データセットにオブザベーションと変数があります。
別名 VAROBS

ARAND

ランダムアクセスがエンジンでサポートされているかどうかを示します。

1 ランダムアクセスがエンジンでサポートされています。
0 ランダムアクセスがエンジンでサポートされていません。
別名 RANDOM

ARWU

エンジンでファイルを操作できるかどうかを示します。

1 エンジンは読み取り専用ではありません。エンジンでSASファイルを作成または更新できます。
0 エンジンは読み取り専用です。

AUDIT

監査ファイルへの記録が有効になっているかどうかを示します。

1 記録が有効になっています。
0 記録が中断されています。

AUDIT_DATA

更新後のレコードイメージが保存されているかどうかを示します。

1 更新後のレコードイメージが保存されています。
0 更新後のレコードイメージが保存されていません。

AUDIT_BEFORE

更新前のレコードイメージが保存されているかどうかを示します。

1 更新前のレコードイメージが保存されています。
0 更新前のレコードイメージが保存されていません。

AUDIT_ERROR

失敗した更新後のレコードイメージが保存されているかどうかを示します。

1 失敗した更新後のレコードイメージが保存されています。
0 失敗した更新後のレコードイメージが保存されていません。

CRDTE

データセットの作成日を示します。戻り値は、作成日に対応する内部SAS日時値です。

ヒント DATETIME.形式を使用してこの値を表示します。

ICONST

SASデータセットの一貫性制約の存在に関する情報を返します。

0 一貫性制約はありません。
1 1つ以上の一般一貫性制約があります。
2 1つ以上の参照一貫性制約があります。
3 1つ以上の一般一貫性制約と1つ以上の参照一貫性制約の両方があります。

INDEX

データセットでインデックスがサポートされているかどうかを示します。

1 インデックスがサポートされています。
0 インデックスがサポートされていません。

ISINDEX

データセットにインデックスが付けられているかどうかを示します。

1 データセットに1つ以上のインデックスが存在します。
0 データセットにインデックスは付けられていません。

ISSUBSET

データセットがサブセットかどうかを示します。

1 1つ以上のWHERE句がアクティブになっています。
0 アクティブになっているWHERE句はありません。

LRECL

論理レコード長を指定します。

LRID

レコードIDの長さを示します。

MAXGEN

最大世代数を示します。

MAXRC

アプリケーションでリターンコードが確認されるかどうかを示します。

1 アプリケーションでリターンコードが確認されます。
0 アプリケーションでリターンコードが確認されません。

MODTE

データセットの最終変更日時を示します。戻り値は、内部SAS日時値です。

ヒント DATETIME.形式を使用してこの値を表示します。

NDEL

削除対象としてマークされたデータセットのオブザベーション数を示します。

NEXTGEN

生成する次の世代番号を示します。

NLOBS

論理オブザベーション(削除対象としてマークされていないオブザベーション)の数を示します。アクティブなWHERE句はこの数に影響しません。

−1 オブザベーション数は使用できません。

NLOBSF

各オブザベーションを強制的に読み込み、FIRSTOBSシステムオプション、OBSシステムオプション、WHERE句を考慮して、論理オブザベーション(削除対象としてマークされていないオブザベーション)の数を示します。

ヒント NLOBSFをATTRNに渡すには、WHERE句に一致するデータセットの各オブザベーションをエンジンで読み込む必要があります。ファイルの種類やサイズに基づいて、これらのオブザベーションを読み込むのは、時間のかかるプロセスです。

NOBS

物理オブザベーション(削除対象としてマークされているオブザベーションを含む)の数を示します。アクティブなWHERE句はこの数に影響しません。

−1 オブザベーション数は使用できません。

NVARS

データセットの変数の数を示します。

PW

データセットのアクセス時にパスワードが要求されるかどうかを示します。

1 データセットは保護されています。
0 データセットは保護されていません。

RADIX

オブザベーション番号(基数によるアドレス指定)でアクセスできるかどうかを示します。

1 オブザベーション番号でアクセスできます。
0 オブザベーション番号でアクセスできません。
注: TAPEエンジンでアクセスするデータセットは、オブザベーション番号ではアクセスできませんが、インデックスでアドレス指定できます。

READPW

データセットの読み込み時にパスワードが要求されるかどうかを示します。

1 データセットは読み込み保護されています。
0 データセットは読み込み保護されていません。

REUSE

圧縮されたSASデータセットの空き領域に新しいオブザベーションを書き込めるかどうかを示します。

1 空き領域を再使用できます。
0 空き領域を再使用できません。

TAPE

データセットテープのステータスを示します。

1 データセットはシーケンシャルファイルです。
0 データセットはシーケンシャルファイルではありません。

WHSTMT

アクティブなWHERE句を示します。

0 アクティブになっているWHERE句はありません。
1 永続的なWHERE句がアクティブです。
2 一時的なWHERE句がアクティブです。
3 永続的なWHERE句と一時的なWHERE句の両方がアクティブです。

WRITEPW

データセットへの書き込み時にパスワードが要求されるかどうかを示します。

1 データセットは書き込み保護されています。
0 データセットは書き込み保護されていません。

例1: アクティブなWHERE句の確認

この例では、WHERE句がデータセットに対して現在アクティブかどうかを確認します。
%let iswhere=%sysfunc(attrn(&dsid,whstmt));
%if &iswhere %then
   %put A WHERE clause is currently active.;

例2: インデックスが付けられているデータセットの確認

この例では、データセットにインデックスが付けらているどうかを確認します。
data _null_;
   dsid=open("mydata");
   isindex=attrn(dsid, "isindex");
   if isindex then put "data set is indexed";
   else put "data set is not indexed";
run;

例3: データセットのパスワード保護の確認

この例では、データセットがパスワードで保護されているかどうかを確認します。
data _null_;
   dsid=open("mydata");
   pw=attrn(dsid, "pw");
   if pw then put "data set is protected";
run;

関連項目:

前のページ|次のページ|ページの先頭へ