35.90 SDO_UTIL.VALIDATE_WKTGEOMETRY

書式

SDO_UTIL.VALIDATE_WKTGEOMETRY(
     geometry  IN CLOB 
     ) RETURN VARCHAR2;

または

SDO_UTIL.VALIDATE_WKTGEOMETRY(
     geometry  IN VARCHAR2 
     ) RETURN VARCHAR2;

説明

入力ジオメトリ(CLOBまたはVARCHAR2型で、標準のWell-Known Text (WKTまたはEWKT)形式)を検証します。入力が有効な場合は文字列TRUEを返し、入力が有効なWKTまたはEWKTでない場合はFALSEを返します。

パラメータ

geometry

有効かどうかを確認する、WKTまたはEWKT形式のジオメトリを指定します。

使用上のノート

ノート:

SDO_UTIL.VALIDATE_WKTGEOMETRYファンクションは、Oracle Autonomous Databaseサーバーレス・デプロイメントでOracle JVMが有効になっている場合にのみサポートされます。Oracle JVMを有効にするには、Oracle Autonomous Databaseサーバーレスの使用Oracle Javaの使用で詳細を参照してください。

有効にするために、入力ジオメトリは、Well-Known Text (WKT)形式またはEWKT形式にすることができます。

このファンクションは、『ISO 13249-3, Information technology - Database languages - SQL Multimedia and Application Packages - Part 3: Spatial』のSQL Multimedia勧告を基にしています。

well-knownバイナリ(WKB)形式のジオメトリが有効かどうかを確認するには、SDO_UTIL.VALIDATE_WKBGEOMETRYファンクションを使用します。

次の例は、WKBおよびWKT形式への変換と逆変換を実行し、WKBおよびWKTジオメトリが有効かどうかを確認しています。(例では、「空間データの挿入、索引付けおよび問合せの例」の特にCOLA_MARKETS表のcola_bジオメトリについて、その定義およびデータを使用しています。)

DECLARE
  wkbgeom BLOB;
  wktgeom CLOB;
  val_result VARCHAR2(5);
  geom_result SDO_GEOMETRY;
  geom SDO_GEOMETRY;
BEGIN
SELECT c.shape INTO geom FROM cola_markets c WHERE c.name = 'cola_b';
 
-- To WBT/WKT geometry
wkbgeom := SDO_UTIL.TO_WKBGEOMETRY(geom);
wktgeom := SDO_UTIL.TO_WKTGEOMETRY(geom);
DBMS_OUTPUT.PUT_LINE('To WKT geometry result = ' || TO_CHAR(wktgeom));
 
-- From WBT/WKT geometry
geom_result := SDO_UTIL.FROM_WKBGEOMETRY(wkbgeom);
geom_result := SDO_UTIL.FROM_WKTGEOMETRY(wktgeom);
 
-- Validate WBT/WKT geometry
val_result := SDO_UTIL.VALIDATE_WKBGEOMETRY(wkbgeom);
DBMS_OUTPUT.PUT_LINE('WKB validation result = ' || val_result);
val_result := SDO_UTIL.VALIDATE_WKTGEOMETRY(wktgeom);
DBMS_OUTPUT.PUT_LINE('WKT validation result = ' || val_result);
 
END;/
 
To WKT geometry result = POLYGON ((5.0 1.0, 8.0 1.0, 8.0 6.0, 5.0 7.0, 5.0 1.0))
WKB validation result = TRUE                                                    
WKT validation result = TRUE