-e オプションを指定した場合、複数のエントリの検索可能列値を変更することになる nistbladm コマンドは実行されず、エラーが返されます。このとき、非検索可能列の値は考慮されません。
nistbladm column=" value" ¥ column=" value" ¥ ... indexedname
-e オプションを指定した場合、変更する列の値を指定するだけです。
ここで次のテーブルについて考えます。
Dept |
Site |
Name |
---|---|---|
Sales |
SanFran |
Tsosulu |
Name 列の値を Chandar に変更するには、次のように入力します。
master% nistbladm -e Name="Chandar" [Dept='Sales',Site='SanFran'],¥ depts.doc.com.
修正後のテーブルは次のようになります。
Dept |
Site |
Name |
---|---|---|
Sales |
SanFran |
Chandar |
(上記の例では、インデックス名に Name 列が含まれていません。これは、Name 列が検索可能ではないためです。)
C シェルを使っている場合は、角カッコを含む数式を引用符でオフセットすることもできます。
-e オプションを指定して検索可能列の値を編集するには、新たに指定した値が (インデックス名によって識別される) 1 行にだけ適用されることが条件になります。したがって、Dept 列の値を Manf に変更するには、次のように入力します。
master% nistbladm -e Dept="Manf" [Dept='Sales',Site='SanFran'],¥ depts.doc.com.
Dept (検索可能) |
Site (検索可能) |
Name |
---|---|---|
Manf |
SanFran |
Chandar |
しかし、検索可能列に Manf と SanFran という値を持つエントリが既に存在する場合は、nistbladm -e はエラーを返します。
同一のエントリが対象である場合は、複数の列の変更を指定できます。たとえば、Dept 列と Name 列の値を変更するには、次のように入力します。
master% nistbladm -e Dept="Manf" Name="Thi" ¥ [Dept='Sales',Site='SanFran'],depts.doc.com.
Dept (検索可能) |
Site (検索可能) |
Name |
---|---|---|
Manf |
SanFran |
Thi |