Hi Even thanks for the hint:
ERROR 6: CreateFeature : unsupported operation on a read-only datasource. ERROR 6: CreateFeature : unsupported operation on a read-only datasource. ERROR 6: CreateFeature : unsupported operation on a read-only datasource. ERROR 6: CreateFeature : unsupported operation on a read-only datasource. ERROR 6: CreateFeature : unsupported operation on a read-only datasource. ERROR 6: CreateFeature : unsupported operation on a read-only datasource. I didn't know that default setting is read-only mode. Changing to "ogr.Open(dstConnString, 1)" works like a charm. regards Stefan On Mon, Nov 28, 2016 at 12:02 AM, Even Rouault <[email protected]> wrote: > On samedi 26 novembre 2016 21:18:50 CET Stefan Ziegler wrote: > > > Hi > > > > > > I'm trying to copy some features from one postgis table to another > postgis > > > table: > > > > > > dstLayer.StartTransaction() > > > > > > srcFeature = srcLayer.GetNextFeature() > > > while srcFeature is not None: > > > srcLayerDefn = srcLayer.GetLayerDefn() > > > > > > dstLayerDefn = dstLayer.GetLayerDefn() > > > dstFeature = ogr.Feature(dstLayerDefn) > > > dstFeature.SetFID(-1) > > > > > > for i in range(0, dstLayerDefn.GetFieldCount()): > > > attrName = dstLayerDefn.GetFieldDefn(i).GetNameRef() > > > > > > # ATTRIBUTES > > > try: > > > attrVal = srcFeature.GetField(attrName) > > > dstFeature.SetField(attrName, attrVal) > > > except ValueError: > > > pass > > > > > > # GEOMETRY > > > geom = srcFeature.GetGeometryRef() > > > dstFeature.SetGeometry(geom) > > > > > > # ADD FEATURE > > > dstLayer.CreateFeature(dstFeature) > > > > > > srcFeature = srcLayer.GetNextFeature() > > > > > > dstLayer.CommitTransaction() > > > > > > It throws an error when trying to create the new feature: > > > > > > GNM: GNMRegisterAllInternal > > > GNM: RegisterGNMFile > > > GNM: RegisterGNMdatabase > > > PG: DBName="xanadu2" > > > PG: PostgreSQL version string : 'PostgreSQL 9.5.4 on x86_64-pc-linux-gnu, > > > compiled by gcc (Ubuntu 5.4.0-6ubuntu1~16.04.2) 5.4.0 20160609, 64-bit' > > > PG: PostGIS version string : '2.2 USE_GEOS=1 USE_PROJ=1 USE_STATS=1' > > > GDAL: GDALOpen(PG: host=localhost dbname=xanadu2 user=stefan > > > password=XXXXXXXXXX this=0x11e41b0) succeeds as PostgreSQL. > > > PG: Command Results Tuples = 11 > > > GDAL: GDALDriver::Create(Memory,,0,0,0,Unknown,(nil)) > > > PG: 11 features read on layer 'sql_statement'. > > > PG: DBName="xanadu2" > > > PG: PostgreSQL version string : 'PostgreSQL 9.5.4 on x86_64-pc-linux-gnu, > > > compiled by gcc (Ubuntu 5.4.0-6ubuntu1~16.04.2) 5.4.0 20160609, 64-bit' > > > PG: PostGIS version string : '2.2 USE_GEOS=1 USE_PROJ=1 USE_STATS=1' > > > GDAL: GDALOpen(PG: host=localhost dbname=xanadu2 user=stefan > > > password=XXXXXXXXXX this=0x12db330) succeeds as PostgreSQL. > > > PG: Primary key name (FID): t_id, type : int8 > > > PG: Using column 't_id' as FID for table > > > 'nachfuehrngskrise_nachfuehrungskreis' > > > Traceback (most recent call last): > > > File "./datenumbau.py", line 117, in <module> > > > dstLayer.CreateFeature(dstFeature) > > > File "/usr/local/gdal_master/lib/python2.7/site-packages/osgeo/ogr.py", > > > line 1479, in CreateFeature > > > return _ogr.Layer_CreateFeature(self, *args) > > > RuntimeError: OGR Error: General Error > > > GDAL: GDALClose(PG: host=localhost dbname=xanadu2 user=stefan > > > password=XXXXXXXXXX this=0x12db330) > > > GDAL: GDALClose(PG: host=localhost dbname=xanadu2 user=stefan > > > password=XXXXXXXXXX this=0x11e41b0) > > > GDAL: In GDALDestroy - unloading GDAL shared library. > > > GDAL: Force close of (0x136abb0) in GDALDriverManager cleanup. > > > Mem: 1 features read on layer 'sql_statement'. > > > > > > I'm bit confused about the "general error". Does anyone has an idea? > > > > What if you don't enable python exceptions from GDAL errors (ie don't call > gdal.UseExceptions(), or use gdal.DontUseExceptions()). Do you get > something more verbose ? > > > > > > > > regards > > > Stefan > > > > > > -- > > Spatialys - Geospatial professional services > > http://www.spatialys.com >
_______________________________________________ gdal-dev mailing list [email protected] http://lists.osgeo.org/mailman/listinfo/gdal-dev
