Hitachi

ノンストップデータベース HiRDB Version 10 構造型データベース機能


14.9.1 規則

〈この項の構成〉

(1) pdsdbexeコマンドの実行条件

参考

接続先のHiRDBのバージョンとpdsdbexeコマンドのバージョンが異なっていてもpdsdbexeコマンドを実行できます。DMLコマンドは,接続先のHiRDBのバージョンの仕様に従って実行されます。そのため,接続先のHiRDBのバージョンが古い場合,未サポートの機能が原因でエラーになることがあります。

接続先のHiRDBのバージョンは,個別開始時のHiRDBのバージョン情報に出力されます。pdsdbexeコマンドのバージョンは,pdsdbexeコマンドの開始メッセージに出力されます。

(2) コマンドの実行者

pdsdbexeコマンドを実行する際,CONNECT権限が必要になります。

(3) コマンド実行前の作業

(4) pdsdbexe操作コマンドの指定規則

  1. pdsdbexe操作コマンドの終わりには,セミコロン( ; )を記述してください。セミコロン以降は,コメントとして扱われます。セミコロンがない場合は,継続行(pdsdbexe操作コマンドが途中である)として扱われます。例を次に示します。

    (例)

     START "FMB1"                    ←継続行
            ACSRDAREA("RDAREA1",     ←継続行
                      "RDAREA2");    ←DMLコマンドの終了
    参考

    継続行は,改行記号が削除されたあとに連結されます。

  2. 改行コードには,LF(X'0A')または,CRLF(X'0D0A')を指定できます。pdsdbexe操作コマンド中の任意の位置に改行コードを指定できますが,改行コードを区切り文字として使用することはできません。

    pdsdbexe操作コマンド中に指定された改行コードは,pdsdbexe操作コマンドの実行時にすべて削除されます。そのため,文字列定数の途中に改行コードを指定しても問題ありません(長い文字列定数を複数行に分けて記述できます)。

  3. pdsdbexe操作コマンド中のキーワードとキーワードの間や,キーワードと名前の間などには,区切り文字を指定する必要があります。区切り文字には,空白(X'20')またはタブ(X'09')を指定できます。

    例えば,「MODIFY RECB」と指定した場合,MODIFYとRECBの間に区切り文字を指定する必要があります。

    区切り文字を指定する必要がある個所については,マニュアル「HiRDB SQLリファレンス」の「区切り文字の挿入」を参照してください。

    参考

    キーワードとは,コマンド中に指定するコマンド名や,オペランド名などのことで,例えば次の文字列が該当します。

    • START,FETCH,#EXITなどのコマンド名

    • ACSMODEなどのオペランド名と,READ,UPDATEなどのオペランドの指定値

    名前とは,コマンド中に指定するSDBデータベース名などのことで,レコード名,構成要素名,RDエリア名,認可識別子,パスワードなど,識別子として指定する項目が該当します。

  4. 認可識別子などの名前に英小文字を使用する場合は,名前を引用符( " )で囲んでください。引用符で囲まないと,英小文字は英大文字に変換されます。また,アポストロフィ( ' )または引用符で囲まれた部分は変換されません。

  5. 名前に予約語を使用する場合は,名前を引用符( " )で囲んでください。囲まないとpdsdbexe操作コマンドがエラーになることがあるため,名前は引用符で囲んで指定することを推奨します。予約語については,「付録O.1 DMLの予約語」を参照してください。

  6. 次の個所にコメントを記述できます。/*と*/で囲まれた部分がコメントになります。

    • セミコロンから改行までの間

    • pdsdbexe操作コマンド中ではなく,pdsdbexe操作コマンドの文字列を含まない行

    (例1)

     START "FMB1"
            ACSRDAREA("RDAREA1",
                      "RDAREA2");     /* 個別開始 */<改行>

    (例2)

     /* 個別開始 */
     START "FMB1"
            ACSRDAREA("RDAREA1",
                      "RDAREA2");
     /* FMB1へのアクセス */    /* RDエリア名RDAREA1,RDAREA2 */
  7. pdsdbexe操作コマンド中にコメントは記述できません。

    (指定できない例)

     START "FMB1"
            ACSRDAREA("RDAREA1",  /* 個別開始 */ 
            /* FMB1へのアクセス */
                      "RDAREA2");
  8. コメントを指定した行には,pdsdbexe操作コマンドを指定できません。

    (指定できない例)

     /* 個別開始 */    START "FMB1"
            ACSRDAREA("RDAREA1",
                      "RDAREA2");
  9. コメントを複数行に分けて記述することはできません。

    (指定できない例)

    /* 個別開始
       FMB1へのアクセス */
     START "FMB1"
            ACSRDAREA("RDAREA1",
                      "RDAREA2");
  10. 1行の長さは,改行コードを含んで65,530バイトを超えてはいけません。

  11. pdsdbexe操作コマンドの長さは,2,000,000バイトを超えてはいけません(pdsdbexe操作コマンド中に指定した区切り文字も含む長さです)。

  12. X'00'〜X'1F'のコードを指定した場合,空白に変換されます。

  13. pdsdbexe操作コマンドで指定する文字の文字コードは,pdsetupコマンドで指定した文字コードと同じである必要があります。