0

I'm trying to set up a spatially enabled SQLite database with ArcGIS 10.3. I've gone through the following steps:

  1. Create a database using the sqlite3 utility: sqlite3 mydatabase.sqlite

  2. Load the relevant extensions: SELECT load_extension('c:\Program Files (x86)\ArcGIS\Desktop10.3\DatabaseSupport\SQLite\Windows32\stgeometry_sqlite.dll','SDE_SQL_funcs_init');

  3. Create the tables to add the ST_Geometry tables to the database: SELECT CreateOGCTables();

After following the above, I can browse to the database in ArcCatalog. I can copy feature classes from personal geodatabases into it using Feature Class to Feature Class. However, whenever I attempt to buffer this feature class in the SQLite database, with the same database the output, I get the error "DBMS table not found".

If a run the same buffer operation from a personal geodatabase to the SQLite database, it succeeds. If I run the same operation from SQLite to a personal geodatabase, it fails.

The database name and feature class names are all lowercase, per the advice of this SE post.

It seems that something is wrong with the data in SQLite, but I have no idea what.

  • Oops, I misread your question. SQL lite does not have a tool to enable this. I was thinking SQL server express From what I know of sql Lite you can use it to store spatial data as you described but you may have to do operations using cursors instead This is a great question though so I will do some research on this. – Ben S Nadler Dec 12 '15 at 16:51
  • Thanks @Ben, much appreciated. We're looking in to SQLite as an eventual replacement for the personal geodatabase in our development of ArcSwat. Given its easy install requirements, portability, and common usage, we thought it might be a good candidate. Would be great to see if the above is possible, and get your take on additional downsides and other alternative databases. Thanks! – Charlie Hofmann Dec 12 '15 at 20:56
1

So yes, there is a tool. It is in ArcGIS Pro: http://pro.arcgis.com/en/pro-app/tool-reference/data-management/create-sqlite-database.htm.

The only thing that is exposed at this point is support for SQLite Databases. Esri supports 3 flavors. ST_Geometry, SpatiaLite and GeoPackages. GeoPackage is a OGC standard format. There is support simple features in all three cases (point, multipoint, line and polygon). No other geodatabase functionality is supported. You can load data, append data and use calculate field. You cannot open an edit session. Support for GP against feature classes (like buffer) is supported.

  • Thanks for looking into this @Ben. I've created a SQLite database in ArcGIS 10.3.1 per this help doc. Unfortunately I'm still experiencing the DBMS table not found error whenever I try to execute simple geoprocessing operations. I switched to a 10.2.2 machine and was able to complete an identical buffer in the same database. Any idea if there are some limitations with 10.3.1 regarding SQLite? – Charlie Hofmann Dec 16 '15 at 20:14
  • Sounds like a bug that was logged against version 10.2 that is still open. The workaround ls to output the buffer to a file gdb in memory and then copy it over to the SQLite . Tech support should be able to assist with this. Strange that it works in 10.2.2. Maybe it came back at 10.3.1... – Ben S Nadler Dec 17 '15 at 0:29
  • Got it-- that sounds like it explains a lot of my issues. Is this bug logged anywhere? I haven't been able to find it online. Would be helpful to have a reference to it when talking with esri support. Thank you! – Charlie Hofmann Dec 17 '15 at 13:29

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.