CreateTopology — 新しいトポロジスキーマを生成し、topology.topologyテーブルに登録します。
integer CreateTopology(
name topology_schema_name, integer srid, double precision prec, boolean hasz, integer topoid, boolean useslargeids)
;
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
Enhanched: 2.0 hasZを受け付ける形式の追加
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; topoid ------ 2