7.9 SDO_GEOR.copy
形式
SDO_GEOR.copy( inGeoRaster IN SDO_GEORASTER, outGeoRaster IN OUT SDO_GEORASTER);
説明
既存のGeoRasterオブジェクトのコピーを作成します。
パラメータ
- inGeoRaster
-
コピーするGeoRasterオブジェクトを指定します。
- outGeoRaster
-
コピー操作の結果を格納するGeoRasterオブジェクトを指定します。既存の有効なGeoRasterオブジェクトまたは空のGeoRasterオブジェクトのいずれかであることが必要です。(空のGeoRasterオブジェクトの詳細は、「空白のGeoRasterオブジェクトと空のGeoRasterオブジェクト」を参照してください)。
inGeoRaster
と同じGeoRasterオブジェクトは指定できません。
使用上のノート
outGeoRaster
オブジェクトは、inGeoRaster
オブジェクトの正確なコピーになります。コピー操作中、出力されるGeoRasterオブジェクトを変更するには、SDO_GEOR.changeFormatCopyプロシージャを使用します。
inGeoRaster
がNULLの場合、このプロシージャは処理を実行しません。
outGeoRaster
がラスター・データを持つ場合、コピー処理の前に削除されます。
inGeoRaster
とoutGeoRaster
には異なるGeoRasterオブジェクトを指定する必要があります。
inGeoRaster
にピラミッド・データが存在する場合、ピラミッド・データはoutGeoRaster
にコピーされます。
次の1つ以上の条件に該当する場合、例外が発生します。
-
inGeoRaster
が無効である。 -
outGeoRaster
が初期化されていない。 -
outGeoRaster
に対するラスター・データ表が存在せず、outGeoRaster
が空白のGeoRasterオブジェクトではない。
例
次の例では、初期化されたGeoRasterオブジェクト(gr2
)をGEORASTER_TABLE表のGEORASTER列に挿入し、gr2
を別のGeoRasterオブジェクト(gr1
)の正確なコピーにして、GEORASTER列の値にgr2
を指定して挿入された行を更新します。(GEORASTER_TABLEという名前の表を参照します。この表の定義は「記憶域パラメータ」の例1-1の次に説明されています。)
DECLARE gr1 sdo_georaster; gr2 sdo_georaster; BEGIN INSERT INTO georaster_table VALUES (11, sdo_geor.init('RDT_11', 1)) RETURNING georaster INTO gr2; SELECT georaster INTO gr1 from georaster_table WHERE georid=1; sdo_geor.copy(gr1, gr2); UPDATE georaster_table SET georaster=gr2 WHERE georid=11; COMMIT; END; /
親トピック: SDO_GEORパッケージのリファレンス