名前

CreateTopology — 新しいトポロジスキーマを生成し、topology.topology テーブルに登録します。

概要

integer CreateTopology(name topology_schema_name, integer srid, double precision prec=0, boolean hasz=false, integer topoid=0, boolean useslargeids=false);

説明

topology_nameという名前でトポロジスキーマを新たに生成し、topology.topologyテーブルに登録します。トポロジ名は一意でなければなりません。トポロジテーブル (edge_data, face, node, relation) は、このスキーマ内に生成されます。トポロジの ID を返します。

sridはトポロジーの空間参照系 の SRID です。SRID を指定していない場合のデフォルトは-1 (不明) です。

許容値precは空間参照系の単位で計測されます。許容値はデフォルトでは 0.0です。

haszを指定しない場合のデフォルトは FALSE です。

topoid 任意パラメータ、明示的な識別子 (トポロジー ID の割当を決定しますが一意である必要があります)

useslargeids 任意パラメータで、デフォルトは FALSE です。TRUEの場合には、このトポロジーのトポロジー ID とプリミティブ ID は大きな数の ID (int8) に対応します。

これは SQL/MM のST_InitTopoGeoに似ていますが、より高機能です。

Availability: 1.1

Enhanced: 2.0 hasZ対応の追加。

Enhanced: 3.6.0 topoidusesLargeIDsパラメーターの追加。

ma_topoという名前のトポロジスキーマを生成します。これはマサチューセッツ州メートル平面 (SRID 26986) でエッジとノードを保存することとします。空間参照系の単位がメートルなので、許容値は 0.5メートルとなります。

コード
SELECT topology.CreateTopology('ma_topo', 26986, 0.5);

ri_topo という名前の、空間参照系をフィート平面 (SRID = 3438) としたロードアイランドのトポロジーの生成

コード
SELECT topology.CreateTopology('ri_topo', 3438) AS topoid;
出力
2