7.134 SDO_GEOR.setHistogramTable

形式

SDO_GEOR.setHistogramTable(
     georaster    IN OUT SDO_GEORASTER, 
     layerNumber  IN NUMBER 
     tableName    IN VARCHAR2);

説明

GeoRasterオブジェクトのレイヤーのヒストグラム表を設定します。

ノート:

このプロシージャは、ヒストグラム表の名前をGeoRasterに登録します。ただし、今回のリリースのGeoRasterでは、ヒストグラム表を使用した操作は実行されません。

パラメータ

georaster

GeoRasterオブジェクトを指定します。

layerNumber

ヒストグラム表の名前を設定するレイヤーの番号を指定します。値が0(ゼロ)の場合、オブジェクト・レイヤーが指定されます。

tableName

ヒストグラム表の名前を指定します。このパラメータがNULLの場合、既存のヒストグラム表(実際の表ではない)のメタデータ情報は削除されます。レイヤーの統計情報が存在しない場合、このパラメータはNULLである必要があります。パラメータ値に空の文字列('')を指定することはできません。

使用上のノート

このプロシージャは、ユーザー定義のヒストグラム表を指定します。このオブジェクト型およびヒストグラムの概要は、「SDO_GEOR_HISTOGRAMオブジェクト型」で説明しています。

レイヤーのヒストグラム表の名前を戻すには、SDO_GEOR.getHistogramTableファンクションを使用します。

次の1つ以上の条件に該当する場合、例外が発生します。

  • layerNumberがNULLか、またはGeoRasterオブジェクトに対して無効である。

  • tableNameが空の文字列('')である。

  • 指定されたレイヤーに関連付けられた統計データが設定されていない。

    レイヤーに統計データを設定するには、SDO_GEOR.setStatisticsプロシージャをコールします。

次の例では、GEORASTER_TABLE表で、GEORID列値が4である行に含まれているGeoRasterオブジェクト(GEORASTER列)のレイヤー3のヒストグラム表として、HIST1を設定します。(GEORASTER_TABLE表の定義は、「記憶域パラメータ」例1-1の次に説明されています。)

DECLARE
  grobj sdo_georaster;
BEGIN
  SELECT georaster INTO grobj FROM georaster_table WHERE georid=4 FOR UPDATE;
  sdo_geor.setHistogramTable(grobj, 3, 'HIST1');
  UPDATE georaster_table SET georaster = grobj WHERE georid=4;
  COMMIT;
END;
/