Insertar tabla en postGIS desde un fichero de texto tipo csv.

Si teenmos una tabla en formato txt o csv con el campo de las coordenadas, podemos insertar datos espacialesen una base de datos postGIS mediante cuatro pasos que te van a resultar muy sencillos.

1-Definimos nuestra tabla en postgres.

CREATE TABLE mitabla(
	id_campo serial,
        campo1 varchar (10),
	coorx integer,	
	coory integer,
CONSTRAINT pk_mitabla PRIMARY KEY (id_campo));

para mas información seguir este link

2-Copiamos los valores del archivo csv separado por ; a la tabla que hemos creado en postgres.

COPY mitabla (fid_campo,campo1,coorx,coory)
FROM '/tmp/mis_datos.csv'
DELIMITERS ';'CSV;

Es importante definir cual es nuestro delimitador del campo dentro del fichero de texto y la ruta donde esta nuestro fichero. Si estas trabajando con Linux lo mejor es que lo guardes en la carpeta tmp donde postgres puede tener acceso sin dificultades.

3-Añadimos el campo que describe la geometria a nuestra tabla

ALTER TABLE mitabla ADD COLUMN geom geometry(POINT,23030);

Definimos el tipo de geometría POINT,LINE,POLYGON y el sistema de coordenadas en este caso el EPSG 23030

4-Actualizamos el campo geom que hemos creado con los puntos mediante sus respectivas coordenadas X e Y.

UPDATE mitabla SET geom =  ST_SetSRID(ST_MakePoint(coorx,coory),23030);

5-Para finalizar creamos un índice espacial

CREATE INDEX idx_mitabla_geom ON llamadas USING GIST(geom)

Deixa un comentari

Fill in your details below or click an icon to log in:

WordPress.com Logo

Esteu comentant fent servir el compte WordPress.com. Log Out /  Canvia )

Google photo

Esteu comentant fent servir el compte Google. Log Out /  Canvia )

Twitter picture

Esteu comentant fent servir el compte Twitter. Log Out /  Canvia )

Facebook photo

Esteu comentant fent servir el compte Facebook. Log Out /  Canvia )

S'està connectant a %s