データベース

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

CRTPFコマンドや CRTLF コマンドによる物理ファイルや論理ファイルの作成時において、

パラメータの値は省略値のままで、ファイルを作成するよりは少しは考慮したほうが

良い点がある。

それはレベル・チェック・パラメータと機密保護 パラメータの2つである。

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

のように

  • レコード様式レベルの検査( LVLCHK ) の *YES*NO に設定し
  • 権限 ( AUT ) も *LIBCRTAUT から *ALL に変更する。

最初に「レコード様式レベルの検査( LVLCHK )」とはこのファイルが作成された後に

コンパイルされたプログラムによるアクセスだけを認めるが、このファイルが作成される前に

コンパイルされたプログラムからのアクセスは OS によって検査して実行を認めない、

というパラメータである。

新らしく適用業務を開発中に LVLCHK=*YES のままてファイルを作成しておくと

あちこちの開発中のプログラムがレベル検査に引っかかってエラーとなって

動作しなくなるトラブルが頻繁に発生することになる。

そこで一般的には

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

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

また権限( AUT ) の制約もとりあえずは *ALL によって作成しておいてから

後で整理して必要であれば権限を与える、という方法が一般的であるため

最初の作成時点では、

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