Как переместить пространственные данные из Oracle в Postgres

У кого-нибудь есть четкий документ о том, как переместить данные Oracle Spatial в Postgres (как версию Community, так и Enterprise DB... Спасибо


person Community    schedule 22.12.2009    source источник


Ответы (3)


Во-первых, на Postgres вам необходимо установить PostGIS. Затем экспортируйте свои таблицы Oracle либо в шейп-файл (попробуйте SD02SHP, описанный здесь) или в KML. Если вы можете экспортировать их в шейп-файл, повторно импортируйте их в PostGIS, следуя shp2pgsql этим инструкциям. . Если вы используете kml, повторно импортируйте геометрию с помощью конструктора геометрии ST_GeomFromKML.

person unmounted    schedule 22.12.2009

Вы можете использовать ogr2ogr. Чтобы подключиться к Oracle, вам понадобится OCI.dll, предоставленный расширенной установкой OSGeo4W.

ogr2ogr -a_srs *srs* -overwrite -f "PostgreSQL" -nln *postgis schema*.*postgis table* PG:"host=*postgis host* user=*postgis user* password=*postgis password* dbname=*postgis database*" OCI:"*oracle user*/*oracle password*@(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = *hostname*)(PORT = *port number*)))(CONNECT_DATA = (SID =*sid name*))):*oracle schema*.*oracle table*"

srs = в формате EPSG, например EPSG:27700

См. другие ссылки:

Перенос ПРОСТРАНСТВЕННЫХ данных из Oracle в Postgresql

http://lists.maptools.org/pipermail/foss-gis-suite/2009-August/000781.html

person mixedbredie    schedule 19.07.2012

Вы также могли бы, вероятно, экспортировать геометрию из Oracle как хорошо известный текст, а затем повторно импортировать их. Это потребует от вас написания операторов импорта для таблиц, которые должно быть довольно легко создать.

person TheSteve0    schedule 19.02.2010