ネームスペースの使用および設定
作成した1つ以上のネームスペースおよびネームスペース内の表は、任意の参照の表名に完全修飾できます。ストアに同じ名前の表がある場合、これらの表はネームスペースによって区別されます。
namespace:tablename
namespace:tablename.child1
SELECT * FROM ns1:table1;メソッド実行のネームスペースの設定
ExecuteOptions.setNamespaceメソッドを使用すると、KVStore.execute()メソッドの継続時間のデフォルト・ネームスペースを設定できます。設定中は、表や他のオブジェクト参照を修飾する必要はありません。setNamespaceを使用しないか、表名を完全修飾しない場合、ストアではデフォルトのネームスペースとしてsysdefaultが使用されます。
ExecuteOptions.setNamespace("ns1");
SELECT * FROM table1; 表のネームスペースの決定
オプション・オブジェクトに設定されたネームスペースを確認するには、ExecuteOptions.getNamespaceメソッドを使用します。
特定のネームスペース内の表の取得
TableAPI.getTable()は、次の2つの引数を指定してコールできます。TableAPI.getTable(String namespace, String tableFullName); この場合、TableAPI.getTableメソッドの最初の引数namespaceは、表を作成したネームスペースです。この引数がNULLの場合、このメソッドはデフォルトのsysdefaultネームスペースを使用します。この例は、次に説明する単一の引数を指定して関数をコールすることと同等です。
2番目の引数tableFullNameは、完全な表名です。このインタフェースは、親表のない最上位レベルの表のみを取得します。子表を取得するには、TableAPI.getChildTable()を使用します。
完全修飾表の取得
TableAPI.getTable()は、次の引数を指定してコールできます。
TableAPI.getTable(String fullNamespaceName); fullNamespaceName引数は、ターゲット表の完全名またはネームスペースの修飾名を示します。修飾されていない名前を指定した場合、このメソッドはsysdefaultネームスペースを使用します。接頭辞がネームスペースで、その後にコロンが付いた表名(namespace:)を含むネームスペースを指定する場合、この使用方法はnamespaceを指定したgetTable(String,String)として関数をコールすることと同じになり、前述のTableFullNameと同じです。