Solaris のシステム管理 (ネーミングとディレクトリサービス : FNS、NIS+ 編)

nistbladm、検索可能列、キー、列の値

NIS+ テーブルを作成する際は、S フラグまたは I フラグを指定し、1 つまたは複数の列が検索可能になるようにします (テーブルの列を指定するを参照)。なお、niscat -o tablename と入力すれば、テーブルの列とその特性を一覧表示できます。

テーブル内で行の「識別」に使われるのが検索可能列です。検索可能列の値 (値の組み合わせ) はすべて一意でなければなりません。したがって、検索可能列が 1 つしかないテーブルの場合、各行の検索可能列の値はすべて一意でなければならず、重複は一切許されません。

ここで、city という名前の検索可能列と country という名前の検索不可列からなるテーブルを作成する場合を想定します。次に示すのは、正しい (検索可能列の値の組み合わせに重複がない) テーブルの例です。

City 

Country 

San Francisco 

United States 

Santa Fe 

United States 

Santiago 

Chile 

次は正しくない (City 列に重複がある) テーブルの例です。

City 

Country 

London 

Canada 

London 

England 

1 つのテーブルに検索可能列が複数ある場合は、検索可能列どうしの値の組み合わせが一意であればかまいません。ここでは、Lastname および Firstname という 2 つの検索可能列と、city という検索不可列からなるテーブルを作成する場合を想定します。次に示すのは、正しい (検索可能列の値の組み合わせに重複がない) テーブルの例です。

Lastname 

Firstname 

City 

Kuznetsov 

Sergei 

Odessa 

Kuznetsov 

Rima 

Odessa 

Sergei 

Alex 

Odessa 

次は正しくない (検索可能列の値の組み合わせに重複がある) テーブルの例です。

Lastname 

Firstname 

City 

Kuznetsov 

Rima 

Odessa 

Kuznetsov 

Rima 

Chelm 

NIS+ のコマンドはいずれも、検索可能列の値に基づいて特定の行を識別します。