¿Se está conectando a la base de datos PostGIS desde ArcMap para mostrar y consultar sin ArcSDE?

35

¿Cómo puedo conectarme a una base de datos PostGIS desde ArcMap usando ArcGIS Desktop 9.3 y versiones posteriores?

Me gustaría poder realizar consultas habilitadas espacialmente y recibir los resultados (por ejemplo, uniones espaciales y no espaciales, filtrado, etc.) en lugar de simplemente descargar el contenido de una tabla.

No quiero usar las extensiones espaciales de ArcSDE, quiero usar las extensiones espaciales de PostGIS en ArcGIS Desktop.

    
pregunta fmark 23.07.2010 - 07:55

21 respuesta

28

Si está utilizando ArcGIS 10.0 o posterior, entonces puede conectarse directamente a los datos de PostGIS usando una capa de consulta, hay más información disponible en la ayuda de cada versión:

  

Para usar el tipo de geometría PostGIS, el administrador de la base de datos debe   instalar PostGIS en el clúster de base de datos PostgreSQL. PostGIS es un   Instalación de código abierto de terceros. Una vez instalado, la base de datos   administrador puede utilizar la base de datos de plantillas PostGIS para crear una   base de datos que contiene el tipo de geometría PostGIS, o configurar un   base de datos existente para utilizar el tipo de geometría PostGIS.

  • 10.0 (esta página puede no verse correctamente en Chrome, por lo tanto He usado IE para leer)
respondido por el CDBrown 04.08.2010 - 03:41
21

ArcGIS 10.1 y ArcGIS 10.2 ambos soportan nativamente los tipos de datos PostGreSQL y PostGIS. En la ayuda para ambas versiones se incluye un tutorial para configurar, configurar tablas para usar los tipos de geometría de PostGIS.

    
respondido por el om_henners 02.01.2014 - 06:13
18

Echa un vistazo a esta publicación en mi blog: enlace

Básicamente tienes 2 opciones:

  1. use PostGis con ArcSde (por lo que necesita una licencia de ArcSde y ArcEditor si necesita editar datos)
  2. use zigGIS: enlace (tenga en cuenta que no está probado en ArcGis 10.0). Solo necesitará una caja ArcView para conectarse a ella, incluso para escribir datos.

Tenga en cuenta que si necesita compatibilidad con Geodatabase (dominios, topología, etc.) o compatibilidad con ArcCatalog, la primera solución (con ArcSde) es la única manera de hacerlo en este momento.

Por lo que he oído (no lo probé directamente) en ArcGis Desktop 10, puede hacer una conexión directa de solo lectura a PostGis sin la puerta de enlace de ArcSde.

zigGIS ya no está activo y el sitio web está desconectado

    
respondido por el capooti 03.03.2011 - 15:36
9

Tengo algunas publicaciones sobre cómo hacerlo con 9.3. El primero está aquí y puede ir al resto desde allí: enlace

Lo he hecho una vez con 10.0 y no he tenido problemas. Diré que, al usar PostgreSQL y PostGIS con ArcSDE, recomiendo encarecidamente que se adhiera a las versiones compatibles con Esri.

    
respondido por el Bill Dollins 03.03.2011 - 16:02
5

Lo más fácil sería zigGIS del software obtuso . Actualmente tienes que pagar por ello, pero la palabra en la calle es que la versión 3 será de código abierto .

Según el Archivo de código de Google en ziggis :

  

zigGIS v1.2 ya no es compatible, aunque seguirá estando disponible   aquí para descargar zigGIS v2.0 es ahora un producto comercial y   Incluye mejoras importantes en la estabilidad, aumentos en el rendimiento y una completa   Capacidades de edición. Para obtener más detalles, consulte Software erróneo   sitio web .

y el enlace al sitio web del Software obtuso parece estar roto.

    
respondido por el om_henners 23.07.2010 - 07:59
4

ArcGIS 10.1 SP1 puede conectarse a las bases de datos de PostGIS 2.0.0 de forma nativa, pero la conexión es de solo lectura y, en su mayoría, funciona como un extremo más limpio para las capas de consulta (de hecho, simplemente carga cualquier capa como capas de consulta). La conexión de la base de datos solo le permite ver todas las tablas y capas de la base de datos en el catálogo.

Comoalternativa,tambiénhay arcgis-ogr , que permite conexiones a todos los tipos de vectores OGR como un complemento de ArcGIS . . También es de solo lectura en este momento.

    
respondido por el DPierce 09.05.2013 - 19:32
3

En primer lugar: Solo podrá usar ArcGIS con PostgreSQL usando conexiones OLE DB, lo que significa que solo podrá leer tablas y columnas comunes (incluso podrá leer las columnas espaciales, pero ArcGIS no puede hacerles nada,

Para usar ArcGIS y PostgreSQL + PostGIS (lo que significa que necesita ver datos espaciales), necesitará ArcSDE o ZigGIS .

Con ambas opciones puede consultar, editar y analizar los datos almacenados en PostGIS, dentro de ArcMap u otras herramientas de ESRI.

ArcSDE es un middleware proporcionado por ESRI, que cambia todo el flujo de trabajo (de instalación, configuración de un geodatabse, etc.) de trabajo y ZigGIS es una herramienta de escritorio (es decir, solo se usa cuando están involucradas las herramientas de escritorio de ESRI).

    
respondido por el George Silva 03.03.2011 - 15:34
3

Si tiene un nivel de escritorio ArcEditor o ArcInfo, tiene la capacidad de usar SQL Server Express. Aunque solo un usuario puede editar a la vez, el bloqueo y el desbloqueo pueden ser mejores, puede probar esto primero. Hay mucha documentación sobre cómo hacerlo, y no tienes que ser un dba, aunque me gustan los postgres. Sin ofender, amigos de QGIS;)

Además, asegúrese de que su representante de ventas de Esri le brinde un presupuesto para "ArcGIS Server Workgroup", no Enterprise. Vea a continuación: puede tener 10 conexiones de edición simultáneas. Debería ser más como $ 3-5k. Precios enlace

Consulte también esta publicación para obtener una buena explicación de las licencias y los enlaces sobre SDE y SQL Server Express Licencia de escritorio ArcSDE

enlace

"Usted crea geodatabases y realiza otras tareas administrativas para servidores de base de datos a través del nodo Servidores de base de datos en la ventana Catálogo o ArcCatalog. Realizar la administración del servidor de base de datos y sus geodatabases a través de ArcGIS Desktop significa que no hay experiencia extra en software o administración de bases de datos requerido para crear y usar estos tipos de geodatabases de ArcSDE.

Las conexiones a las geodatabases en un servidor de base de datos son siempre conexiones directas; utilizan los archivos de la biblioteca de ArcSDE en el cliente para establecer la conexión. En este caso, las aplicaciones cliente son ArcGIS Desktop en el nivel de licencia de ArcEditor o ArcInfo, ArcGIS Engine y ArcGIS Server Workgroup.

Los medios para estos productos incluyen archivos de instalación para SQL Server Express. Una vez que haya creado la instancia de SQL Server Express y ejecute el asistente para permitir que la instancia almacene geodatabases, las bibliotecas dentro de la aplicación cliente le permiten conectarse y trabajar con los servidores de base de datos y crear y trabajar con geodatabases en el servidor de base de datos.

Con ArcGIS Desktop (ArcEditor y ArcInfo) y ArcGIS Engine, puede configurar un servidor de base de datos y crear geodatabases de ArcSDE a las que pueden acceder unos pocos usuarios y editarlos un usuario a la vez .

Con ArcGIS Server Workgroup usando ArcGIS Desktop, puede configurar un servidor de base de datos y crear geodatabases de ArcSDE a las que pueden acceder hasta 10 usuarios a la vez, todos los cuales pueden editar al mismo tiempo . Al usar los servidores de base de datos con licencia a través de ArcGIS Server Workgroup, también puede conectarse a las geodatabases utilizando aplicaciones web, para las cuales no hay límite de conexión. "

    
respondido por el awesomo 08.05.2013 - 22:21
3

Escribí un complemento que le da a ArcGIS acceso a más de 50 formatos vectoriales (incluido PostGIS). Todavía es experimental, pero puedes probarlo y decirme cómo va.

Hay ventajas en el uso de este enfoque sobre la funcionalidad incorporada en ArcGIS (consulte las preguntas frecuentes), pero nuevamente, aún es experimental.

Descargue e instrucciones aquí

    
respondido por el Ragi Yaser Burhum 14.05.2013 - 21:51
3

He estado monitoreando esta publicación y la web más amplia para encontrar una solución a esto, ya que quería una herramienta similar. Hoy me topé con mi (nuestra) solución a través de RSS al blog de James Fee . Y creo que la solución que busca es PgMap por ST-Links .

He probado la versión ArcGIS 9.3 y es impresionante. Sin embargo, todavía tengo problemas con las ediciones, ya que todavía soy un novato de PostGIS (cosa de la columna de identidad) También viene con un elegante cargador ESRI para PostGIS y, sobre todo, ¡GRATIS! [Probado con OpenGeoSuite Community Edition 2.4.1]

    
respondido por el Erick 12.08.2011 - 09:45
3

Ir a Inicio - > Panel de control - > Rendimiento y mantenimiento - > Herramientas administrativas - > Fuentes de datos.

Vaya a la pestaña DSN del sistema.

Haz clic en Añadir.

Desplácese hacia abajo en la lista. Debería poder ver sus controladores ODBC de PostgreSQL allí si los instaló. Haga clic en el primer controlador ODBC de PostgreSQL en la lista.

Introduzca sus datos de conexión en el formulario. Si la conexión está en la misma máquina que la base de datos PostgreSQL, escriba localhost en el campo del servidor; de lo contrario, el nombre de la computadora en la red. Tendrá que hacer algunos cambios en el archivo pg_hba.conf para conectarse a su base de datos en la red. Lea acerca de esto en los manuales de PostgreSQL en la sección Autenticación de usuarios. Una vez hecho esto, haga clic en Finalizar.

Agregue todos los controladores ODBC de PostgreSQL que encuentre en la lista de manera similar.

Haz clic en Aceptar. Ahora puede conectarse a la base de datos PostgreSQL a través de los controladores ODBC. Los controladores solo necesitaban ser dirigidos a la base de datos con información de conexión.

    
respondido por el Anurag 07.11.2012 - 13:32
3

A partir de la era 2011, intente ST-Links SpatialKit . El software es gratuito y funciona con ArcGIS 9.3 / 10.0 / 10.1 / 10.2.

La descarga tiene un buen PDF para documentar las capacidades, que incluyen visualización, edición, etc.

    
respondido por el Mike T 22.07.2011 - 01:05
2

He hecho esto antes sin demasiado problema con el uso de ArcGIS 10.1 y 10.2, lamentablemente no funciona con 9.3 y postgres 9.2 creo de memoria.

Utilicé los drivers de esri. Inicie sesión en el sitio de atención al cliente de ESRI, aunque creo que esto ha cambiado desde que escribí las instrucciones.

  1. Selecciona tu versión
  2. "Descargas de software"
  3. "Archivos de soporte DMBS"
  4. Desplácese hacia abajo hasta que vea "Bibliotecas cliente de PostgreSQLQL (Windows)", debe tener un tamaño de 2.21 MB.

  5. Haz clic en Descargas

    Para PostgreSQL / PostGIS en el archivo descargado debe ser el conjunto de bibliotecas cliente "pg_client_windows86" que contiene la versión necesaria de 32 bits de libeay32.dll, libiconv-2.dll, libintl-8.dll, libpq.dll y ssleay32 .dll. Copie estos a su directorio bin ArcGIS. En mi computadora usando 10.1 estaba: C: Archivos de programa (x86) ArcGISDesktop10.1bin Si está utilizando ventanas de 32 bits sería algo como: C: Archivos de programaArcGISDesktop10.1bin

Una vez que hayas hecho esto, deberías poder conectarte y agregar datos de tu base de datos. Para utilizar una capa de consulta de datos, primero deberá conectarse a su base de datos. En ArcGIS 10.1 deberá ir a Archivo > Agregar datos > Agregar capa de consulta

Lo único que hay que vigilar es que los datos que se devuelven deben tener un campo único que ArcGIS pueda usar como clave principal. En ocasiones, es posible que deba especificarlo si está utilizando algo más que una simple consulta básica y ArcGIS no puede determinar qué campo usar. Puedes hacer esto por:

  1. Primero valide la consulta SQL haciendo clic en el botón Validar (ArcGIS necesita generar una lista de campos que están en la selección para rellenar el cuadro de diálogo de opciones avanzadas).
  2. Una vez que se haya validado el SQL, haga clic en Mostrar opciones avanzadas el botón de finalización cambiará de Finalizar a Siguiente >
  3. Haz clic en Siguiente > y luego puede acceder al cuadro de diálogo de opciones avanzadas.
  4. En el cuadro de diálogo de opciones avanzadas, aparece una lista de todos los Campos para la mesa. Seleccione un campo que actuará como un único campo identificador: el valor predeterminado es tener todos los campos seleccionados.
  5. También puede configurar el sistema de referencia espacial de sus datos si es     apropiado para hacerlo.
  6. Haz clic en Finalizar y luego tu capa se agregará a tu mapa.

También puede ejecutar las consultas espaciales contra la base de datos de Postgres con relativa facilidad, aunque tiene que fabricar un campo de identificación sobre la marcha. p.ej. Aquí hay un ejemplo de cómo hacer un búfer de 100 km.

SELECT row_number() over(order by cities.the_geom)::integer as oid,
ST_BUFFER(cities.the_geom, 100000) AS the_geom,
cities.name
FROM mygis.public.cities As cities

No solo puede guardar cualquier capa de consulta como un archivo de capa y pasarla a través de algunas de las herramientas estándar de ArcGIS también. No he probado esto demasiado. Así que agregando columnas y cosas así pude ver que causando estragos. Creo que podría hacer llamadas espaciales de SQL con otras bases de datos como SQLServer y Oracle, también con un poco de manipulación para crear el campo de identificación sobre la marcha.

Hace un tiempo hice un tutorial completo en: enlace

    
respondido por el andy3092 12.10.2015 - 22:01
2

A partir de ArcGIS 10.4, puede leer y escribir en Geometría PostGIS en admitido Bases de datos PostgreSQL sin necesidad de extensiones adicionales. Solo he usado una licencia avanzada para esto, pero creo que una licencia estándar también se puede conectar a una base de datos del servidor PG que no sea geodatabase y usar ese espacio de trabajo como destino para las herramientas de creación de vectores. Es más engorroso, pero también puede usar clientes de licencias básicas para escribir en tablas utilizando SQL con Python (a través de arcpy.ArcSDESQLExecute ). Las capas de consulta de solo lectura han sido una opción con todos los niveles de licencia desde ArcGIS 10.0.

    
respondido por el Vince 27.09.2016 - 13:28
1

¿PostgreSQL 9 funcionará con ArcGIS 10?

Para editar Postgis ZigGIS 3.0

enlace

Solo lectura se puede hacer a través de la derecha ODBC Postgres Drivers y haciendo una conexión directa en ArcCatalog

    
respondido por el Mapperz 03.03.2011 - 16:22
1

GISquirrel hace el trabajo a una fracción del costo de SDE. Admite la conexión de arcgis tanto a MSSQL como a PostGIS. Muy simple de configurar (capaz de importar a postgres desde shapefile / featureclass) y simple de mantener. Para una pequeña cantidad de usuarios que necesitan la capacidad de edición de múltiples usuarios, está bien.

Usamos GISquirrel / Arcgis para nuestros 'usuarios avanzados' de GIS y QGIS puede conectarse al mismo servidor de PostGIS para nuestros 'usuarios básicos', lo que ahorra en costos de licencias.

    
respondido por el Matt 09.05.2013 - 21:28
1

GISquirrel hace el trabajo muy bien para MSSQLserver, y estoy bastante seguro de que funcionará bien para Postgres. Trabajo en un entorno ESRI / Qgis mixto, y uso ardilla GIS también para importar shapefiles, etc. en la base de datos. En SQLserver GISsquirrel realiza un seguimiento de las columnas de geometría, uso esta información para actualizar la tabla geometry_columns utilizada por Qgis. Muy útil ...

    
respondido por el Peter Bange 15.05.2013 - 12:59
1

PgMap fue reemplazado por st-links spatialKit y no solo es compatible con PostGIS, sino que también es compatible con SQL Server 2008. Funciona con ArcMap 9.3 y ArcMap 10. Sólo cumple con su requisito. Compruébelo en www.st-links.com

    
respondido por el chun 11.12.2011 - 07:41
0

Creo que tiene varias opciones fuera del uso de SDE (aunque señalaré que puede usar PG_Geometry en SDE, por lo tanto, acceder a los datos a través del software ESRI o el software de sistema operativo compatible con PostGIS). Tiene la extensión de Interoperabilidad de Datos de ESRI, ZigGIS, y probablemente podría instalar una copia de geoserver o mapserver y conectarse a través de un servicio WMS en ArcGIS. Al igual que en la publicación anterior sobre zigGIS y la necesidad de administrar consultas a través de pgAdmin, necesitaría usarla para crear sus consultas con geoserver / mapserver. Idealmente, si reutilizara las mismas consultas, podría guardarlas como vistas en postgresql y acceder a los datos de esa manera.

    
respondido por el wilsongis 06.08.2010 - 07:14
0

ST-Links SpatialKit es una extensión de ArcMap para conectarse directamente a bases de datos espaciales con No ArcSDE, No ArcInfo, No ArcGIS Server.

Según su Licencia , cuesta $ 188 CAD, pero declaran que "continuaremos emitiendo Licencias gratuitas para aquellos usuarios que no pueden pagar la tarifa de la licencia. Las licencias gratuitas tienen límites de tiempo. Si solicita una licencia gratuita, indique el motivo en el correo electrónico de solicitud de licencia. "

    
respondido por el RyanDalton 14.05.2013 - 23:43
0

Una forma fácil de agregar datos de PostGIS a ArcMap es agregar una 'Conexión de interoperabilidad'. Para hacer esto, se requiere la 'Extensión de Interoperabilidad de Datos'.

Se considera una buena idea agregar un 'Índice numérico' y 'Clave principal' a la tabla de base de datos PostGIS antes de crear la conexión.

    
respondido por el Vasanth Reddy Donakanti 22.01.2016 - 10:39

Lea otras preguntas en las etiquetas