<<< предыдущая глава | оглавление | следующая глава >>>
После того как пространственная таблица создана, вы можете загружать данные ГИС в базу. В настоящее время существуют два способа загрузить данные в базу PostGIS/PostgreSQL: использование команд SQL или использование загрузчика/дампера шейп-файлов.
Если вы можете конвертировать ваши данные в текстовое представление, то для загрузки данных в PostGIS проще всего использовать формат SQL. Как и в случае Oracle и других баз SQL данные могут быть загружены через терминал SQL из текстового файла, содержащего SQL-запросы "INSERT".
Файл (например roads.sql) с загружаемыми данными может выглядеть так:
BEGIN; INSERT INTO roads (road_id, roads_geom, road_name) VALUES (1,GeomFromText('LINESTRING(191232 243118,191108 243242)',-1),'Jeff Rd'); INSERT INTO roads (road_id, roads_geom, road_name) VALUES (2,GeomFromText('LINESTRING(189141 244158,189265 244817)',-1),'Geordie Rd'); INSERT INTO roads (road_id, roads_geom, road_name) VALUES (3,GeomFromText('LINESTRING(192783 228138,192612 229814)',-1),'Paul St'); INSERT INTO roads (road_id, roads_geom, road_name) VALUES (4,GeomFromText('LINESTRING(189412 252431,189631 259122)',-1),'Graeme Ave'); INSERT INTO roads (road_id, roads_geom, road_name) VALUES (5,GeomFromText('LINESTRING(190131 224148,190871 228134)',-1),'Phil Tce'); INSERT INTO roads (road_id, roads_geom, road_name) VALUES (6,GeomFromText('LINESTRING(198231 263418,198213 268322)',-1),'Dave Cres'); COMMIT;
Данные из файла могут быть легко загружены в PostgreSQL с помощью терминала SQL "psql":
psql -d [database] -f roads.sql
Загрузчик данных shp2pgsql конвертирует шейп-файлы ESRI в соответствующий SQL для вставки в базу данных PostGIS/PostgreSQL. Загрузчик имеет несколько рабочих режимов, задаваемых флагами командной строки:
Заметим, что -a, -c, -d и -p взаимно исключают друг друга.
Посмотрите пример сессии использования загрузчика для создания файла ввода и его загрузки:
# shp2pgsql shaperoads myschema.roadstable > roads.sql # psql -d roadsdb -f roads.sql
В UNIX конвертация и загрузка могут буть выполнены за один шаг с помощью команды:
# shp2pgsql shaperoads myschema.roadstable | psql -d roadsdb
<<< предыдущая глава | оглавление | следующая глава >>>
Обсудить в форуме Комментариев 21
Последнее обновление: December 01 2008
© GIS-Lab и авторы, 2002-2021. При использовании материалов сайта, ссылка на GIS-Lab и авторов обязательна. Содержание материалов - ответственность авторов. (подробнее).