Name

AddTopoGeometryColumn — Agrega una columna topogeometry a una tabla existente, registra esta nueva columna como una capa en topology.layer y devuelve el nuevo layer_id

Synopsis

integer AddTopoGeometryColumn(varchar topology_name, varchar schema_name, varchar table_name, varchar column_name, varchar feature_type);

integer AddTopoGeometryColumn(varchar topology_name, varchar schema_name, varchar table_name, varchar column_name, varchar feature_type, integer child_layer);

Descripción

Cada objeto TopoGeometry pertenece a una capa específica de una topología específica. Antes de crear un objeto TopoGeometry usted necesita crear un TopologyLaye. Una capa de topología es una asociación de una tabla de características con la topología. También contiene información de tipo y jerarquía. Se crea una capa usando la función AddTopoGeometryColumn()

Esta función agregará la columna solicitada a la tabla y agregará un registro a la tabla topology.layer con toda la información dada.

Si no especifica [child_layer] (o lo establece en NULL), esta capa contendrá TopoGeometrías Básicas (compuesta por elementos de topología primitiva). De lo contrario, esta capa contendrá TopoGeometrias jerárquicas (compuestas por TopoGeometrias de la child_layer).

Una vez creada la capa (su id es devuelto por la función AddTopoGeometryColumn), ya está listo para construir objetos TopoGeometry

Valid feature_types are: POINT, MULTIPOINT, LINE, MULTILINE, POLYGON, MULTIPOLYGON, COLLECTION

Availability: 1.1

Ejemplos

-- Note for this example we created our new table in the ma_topo schema
-- though we could have created it in a different schema -- in which case topology_name and schema_name would be different
CREATE SCHEMA ma;
CREATE TABLE ma.parcels(gid serial, parcel_id varchar(20) PRIMARY KEY, address text);
SELECT topology.AddTopoGeometryColumn('ma_topo', 'ma', 'parcels', 'topo', 'POLYGON');
CREATE SCHEMA ri;
CREATE TABLE ri.roads(gid serial PRIMARY KEY, road_name text);
SELECT topology.AddTopoGeometryColumn('ri_topo', 'ri', 'roads', 'topo', 'LINE');