PostGIS'e ESRI Geodatabase formatı .gdb nasıl alınır


17

PostGIS bir ESRI Geodatabase biçimi .gdb yüklerken bir sorunla karşılaştı. 2.5GB GDB dosyam var. İnternette bazı dersleri takip ettim, ama işe yaramıyor gibi görünüyor.

  1. "SampleNY" adlı bir veritabanı oluşturdum
  2. Bunu konsoldan yürüttüm:

    ogr2ogr -f "PostgreSQL" PG: "dbname = SampleNY kullanıcı = postgres" NYPluto / Pluto.gdb

Ama hiçbir şey olmuyor, ne bir hata ne de başarılı bir operasyonum yoktu. Herhangi bir adımı kaçırdım mı?


Ogr2ogr kullanmakla sınırlı mısınız? Yoksa başka çözümlere açık mısınız? FME bunu kolayca yapabilmelidir.
Fezter

Bu sorunu çözebilecek herhangi bir çözüme açık mıyım? Bunun nasıl yapılacağı hakkında daha fazla ayrıntı verebilir misiniz?
user3001937

FME'yi indirmeyi deneyin . Yeni bir çalışma tezgahı oluşturun ve bir Geodatabase Reader ve PostGIS yazıcı ekleyin.
Fezter

1
Ticari bir çözümdür. Sadece ücretsiz çözümler aradığınızı belirtmediniz. Bence FME'nin ücretsiz deneme süresi var.
Fezter

1
Diğer cevaplarda Spatial Data Manager'ı buldum. mapet.altervista.org Bu, Postgis ve diğer uzamsal db'de şekil dosyasını ve dosya coğrafi veritabanını yüklemek için ücretsiz bir Windows aracıdır.
lele3p

Yanıtlar:


19

Uygun hostve portbağımsız değişkenler eklemeyi deneyin .
Ve BTW, büyük bir GDB dosyasını içe aktardığımda şu bayrakları da ekliyorum:

-overwrite (önceden eklemiş olabileceğiniz karışıklıkları siler) ve

-progress (eklenen her 10.000 veya% 10 kayıt için bir nokta veya sayı görüntüler):

--config PG_USE_COPY YES (hızı büyük ölçüde artırır)

Yani komut (ki bu tek satırlı olmalı ama netlik için biçimlendirilmiş)

ogr2ogr 
    -f "PostgreSQL" 
    PG:"host=localhost port=5432 dbname=SampleNY user=postgres" 
    NYPluto/Pluto.gdb 
    -overwrite -progress --config PG_USE_COPY YES

Gerekirse "localhost" yerine bir URL kullanın.


6

Gdb'de birden çok özellik varsa ve Postgres şemasını ve tablo adlarını belirtmek istiyorsanız, aşağıdakileri izleyin:

#First get the featurenames from the gdb:
ogrinfo geodbname.gdb

#then import a feature into a table:
ogr2ogr -f "PostgreSQL" PG:"host=hostname port=5432 dbname=dbname user=postgres"
geodbname.gdb -nlt PROMOTE_TO_MULTI -nln schemaname.tablename featurename -overwrite
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.