الاسم
AddTopoGeometryColumn — تضيف عمود topogeometry إلى جدول موجود، وتسجّل هذا العمود الجديد كطبقة في topology.layer، وتُعيد قيمة layer_id الجديدة.
المختصر
integer AddTopoGeometryColumn(name topology_name, name schema_name, name table_name, name column_name, varchar feature_type, integer child_layer);
integer AddTopoGeometryColumn(name topology_name, regclass tab, name column_name, integer layer_id, varchar feature_type, integer child_layer);
الوصف
ينتمي كل كائن TopoGeometry إلى طبقة محددة من طوبولوجيا محددة. وقبل إنشاء كائن TopoGeometry يجب إنشاء طبقة الطوبولوجيا (TopologyLayer) الخاصة به. طبقة الطوبولوجيا هي ربط بين جدول معالم (feature-table) والطوبولوجيا، وتحتوي أيضًا على معلومات النوع والتسلسل الهرمي. ننشئ طبقة باستخدام الدالة AddTopoGeometryColumn():
تضيف هذه الدالة العمود المطلوب إلى الجدول، وتضيف سجلًا إلى الجدول topology.layer يحتوي على جميع المعلومات المعطاة.
إذا لم تحدد [child_layer] (أو ضبطته على NULL) فستحتوي هذه الطبقة على كائنات TopoGeometry أساسية (مكوّنة من عناصر طوبولوجية أوّلية). وإلا فستحتوي هذه الطبقة على كائنات TopoGeometry هرمية (مكوّنة من كائنات TopoGeometry من الطبقة child_layer).
بمجرد إنشاء الطبقة (تُعيد الدالة AddTopoGeometryColumn معرّفها) تصبح جاهزًا لإنشاء كائنات TopoGeometry فيها
القيم الصالحة لـ feature_type هي: POINT وMULTIPOINT وLINE وMULTILINE وPOLYGON وMULTIPOLYGON وCOLLECTION
متاحة منذ: 1.1
أمثلة
-- 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');
انظر أيضًا
DropTopoGeometryColumn, toTopoGeom, CreateTopology, CreateTopoGeom