I wish to convert a layer that has no geometry field from Oracle to the Esri Shape format (DBF file only). I can do it manually from within QGis but I'd like to automate the process and use ogr2ogr (or a similar tool) instead, as I have dozens of such layers.
-
Perhaps some of the methods in this post might help: ogr2ogr convert all shapefiles in a directory – Joseph Oct 26 '16 at 11:49
-
Your question is a bit unclear, do you want to convert from Oracle table to shapefile or Oracle table to dBase (dbf)? – artwork21 Oct 26 '16 at 13:15
-
I have a large number of Oracle database tables that contain no geometry. I'm going to convert them to the Esri format. No SHP files, only the DBF file that contains attribute data. – Matti Siren Oct 26 '16 at 13:52
-
Have you already tried a conversion from OCI to ESRI Shapefile with ogr2ogr? – user30184 Oct 26 '16 at 20:28
-
Yes I tried but ogr2ogr says it "couldn't fetch the requested layer". Maybe because there's no geometry in the layer. I was wondering if there was some switch to overcome this. – Matti Siren Oct 27 '16 at 6:00
The following works for me. Here is the input table:
SQL> desc us_cities_n
Name Null? Type
---------------------------------------- -------- ----------------------------
ID NUMBER
CITY VARCHAR2(42 CHAR)
STATE_ABRV VARCHAR2(2 CHAR)
POP90 NUMBER
RANK90 NUMBER
The following command makes a dbf file only:
$ ogr2ogr us_cities_n.dbf OCI:scott/tiger@orcl121:us_cities_n
(this is using GDAL/OGR 2.0.1)
-
Hi Albert, thanks for the solution! It was maybe just too simple so I didn't find it myself. :) I could have done this table by table from within QGIS but I'm so lazy I wanted to have an easier way. :) – Matti Siren Oct 28 '16 at 8:52
-
I was surprised too. I first tried it with csv output. Then decided to give it a try for dbf. And it worked :-) – Albert Godfrind Oct 28 '16 at 12:51