2

I have an ArcGIS For Desktop license, and we have a PostgreSQL 9.2/PostGIS 2 database server running in our network. We currently use Query Layers to add the PostgreSQL data to ArcMap sessions.

We would like to make full use of ESRI's geodatabase functionality, without committing to the (we have heard) somewhat unreliable FGDB format.

I see that using the "Create Enterprise Geodatabase" geoprocessing tool one can create a database and have it set-up as a geodatabase, but this requires the input of an authorization key, which it seems is only available with a Server license (true?).

My question: Can we not just turn this diagram, or better, this schema into a series of CREATE statements for the PostgreSQL database in order to generate the equivalent database schema ourselves, and then utilize it from ArcCatalog as we would a file geodatabase, without any "authorization key"?

My thanks for the clarification.

  • 1
    Yes - you will need an ArcGIS for Server Basic license to use that tool. I'm surprised to hear a file geodatabase described as unreliable. – PolyGeo Aug 13 '13 at 22:50
  • Thank you for your comment, PolyGeo. First, we have no experience with FGDB, only second-hand anecdotes and warnings from others in the industry, so I am in no position to bad-mouth the format. Second, I know that the tool requires a Server license to run, but am wondering if what the tool achieves (creating a geodatabase schema in a postgresql database) is possible by other, manual means. is that tool doing something that is not otherwise achievable? I am obviously trying to use an enterprise geodatabase without a server license in the end. Is that a lost battle? Thanks. – Joebocop Aug 13 '13 at 23:08
  • It could be worth editing your question to focus more specifically on that issue. I think it is a "lost battle" but I work with Enterprise Geodatabases from client software rather than as a DBA so definitely defer to others on that. I use file geodatabases all the time -they are designed for personal use but I find them anything but unreliable. – PolyGeo Aug 13 '13 at 23:16
2

No, you cannot defeat Esri's license protection scheme by creating tables in PostgreSQL via SQL. Every database connection from ArcGIS clients validates the license key present in the geodatabase tables before completing the connection process.

Since it's been a long time since this question was asked, there is a new(-ish) solution that doesn't involve software piracy: ArcGIS 10.4 and higher permit read/write access to PostgreSQL 9.3 and higher databases via enterprise geodatabase connections without enabling an enterprise geodatabase.

There are some caveats:

  • You can't edit these non-geodatabase database tables "as if it were a file geodatabase", and
  • You won't have geodatabase behaviours (domains,..).

But you can:

  • Drag a table with a geometry column from the Catalog toolbar onto the map to kick off a Query Layer creation process
  • Specify a geodatabase connection file (.sde) pointing to a non-enabled PG database as the "output geodatabase" in most tools (e.g., FeatureClass to FeatureClass, Intersect, Union, Dissolve,...) to create one or more tables with PostGIS geometry columns
  • Use ArcPy Data Access cursors to select/insert/update/delete rows in tables in a non-gdb database.
  • Use arcpy.ArcSDESQLExecute to do direct SQL manipulation as necessary

This isn't a full replacement for file geodatabase equivalency, but it's close (though I must point out that there is nothing unreliable about file geodatabase).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.