データベース

30.データ・ベースの作成と機密保護

CRTPF コマンドや CRTLF コマンドによる物理ファイルや論理ファイルの作成時において、
パラメータの値は省略値のままで、ファイルを作成するよりは少しは考慮したほうが
良い点がある。
それはレベル・チェック・パラメータと機密保護 パラメータの2つである。

CRTPF FILE(MYLIB/MYFILE) SRCFILE(MYSRCLIB/QDDSSRC) LVLCHK(*NO) AUT(*ALL)

のように

最初に「レコード様式レベルの検査( LVLCHK )」とはこのファイルが作成された後に
コンパイルされたプログラムによるアクセスだけを認めるが、このファイルが作成される前に
コンパイルされたプログラムからのアクセスは OS によって検査して実行を認めない、
というパラメータである。
新らしく適用業務を開発中に LVLCHK=*YES のままてファイルを作成しておくと
あちこちの開発中のプログラムがレベル検査に引っかかってエラーとなって
動作しなくなるトラブルが頻繁に発生することになる。
そこで一般的には

LVLCHK(*NO) でファイルを作成することが望ましい。

と半ば常識になっているのだが、まだ知らない人も多いので紹介した。

また権限( AUT ) の制約もとりあえずは *ALL によって作成しておいてから
後で整理して必要であれば権限を与える、という方法が一般的であるため
最初の作成時点では、

AUT(*ALL) で ファイルを作成することが一般的である。