Convención de nomenclatura de columnas de geometría: 'geom' o 'the_geom'?

22

Estoy empezando mi primer proyecto de PostGIS, y en varios libros y tutoriales he visto la columna de geometría etiquetada como 'geom' o 'the_geom'. ¿Es uno más convencional que el otro?

Además, ¿hay una buena razón para usar 'geom' / 'the_geom' en lugar de un nombre más descriptivo para la columna de geometría? (Por ejemplo, 'centre_point' para el punto central de una entidad). No etiquetamos las columnas convencionales de db 'the_int' o 'the_string', ¿por qué etiquetar las columnas de geometría de esta manera?

    
pregunta Nick 29.01.2013 - 23:25

3 respuestas

16

A partir de la versión 2.0 de PostGIS, "geom" es el nombre de columna común. (Al menos lo veo en la documentación, etc.) Antes de eso era "the_geom", y solo puedo especular sobre por qué.

Puedes usarlo con seguridad, pero estoy felizmente usando "geom" en PostGIS y SpatiaLite.

Editar: Porque me perdí por completo la segunda parte de la pregunta.
En general, un nombre común es conveniente porque es común que el software GIS requiera que las geometrías en una tabla estén restringidas a un único tipo específico, SRID, etc. Por lo tanto, los nombres de las tablas tienden a ser más descriptivos que el nombre de la columna de geometría. Por ejemplo, esperaría encontrar tablas llamadas "school_zone_polygons", "school_zone_centroids" cada una con una columna "geom"; no una tabla de "zonas escolares" con las columnas "geom_polygon", "geom_centroid".

Tener un nombre común significa que no tiene que verificar el esquema cada vez que quiera hacer referencia a una columna de geometría.

    
respondido por el Scro 30.01.2013 - 00:23
6

Una posible razón por la que se eligió "geom" o "the_geom" como nombre genérico para el campo "forma" fue porque realmente puedes almacenar varios tipos de geometría (punto, línea, polietileno, etc.) en el "geom" Campo en la misma tabla. Incluso puede mirar al 2005 cuando esto se discutió en la lista de correo electrónico de PostGIS.

Por ejemplo, puede almacenar todas sus casas, calles y límites de condado en el mismo campo "geom" de su tabla única. Obviamente, hay razones por las que puede elegir hacer lo contrario, pero esto podría representar la razón por la que se usó un nombre de columna genérico "geom".

Es de esperar que algunos usuarios de PostGIS desde hace mucho tiempo participen con más detalles sobre por qué se eligió realmente "geom".

    
respondido por el RyanDalton 30.01.2013 - 00:47
1

Al usar la api REST de Geoserver para publicar las tablas de PostGis existentes, el comando REST fallará si la columna de geometría no se llama "geom".

    
respondido por el Angelo Arboleda 01.08.2013 - 03:48

Lea otras preguntas en las etiquetas