<div dir="ltr"><div class="gmail_default" style="font-size:small">Is it possible to add features to an existing PostGIS table using Python OGR/GDAL? I've tried these two approaches:</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small"><font face="monospace"># Approach 1. Results in:</font></div><font face="monospace"># ERROR 1: Layer tracks already exists, CreateLayer failed.<br># Use the layer creation option OVERWRITE=YES to replace it.<br></font><div class="gmail_default" style="font-size:small"><font face="monospace">ds = ogr.Open("PG:dbname='db' user='user'")<br>srs = osr.SpatialReference()<br>srs.ImportFromEPSG(4326)</font></div><div class="gmail_default" style="font-size:small"><font face="monospace">layer = ds.CreateLayer('tracks', srs, ogr.wkbMultiLineString, ['OVERWRITE=NO'] )<br><br># Approach 2. Results in:<br># ERROR 1: Invalid index : -1<br># ERROR 6: CreateFeature : unsupported operation on a read-only datasource.<br>ds = ogr.Open("PG:dbname='db' user='user'")</font><br><font face="monospace">layer = ds.GetLayerByName('tracks')</font><br></div><div class="gmail_default" style="font-size:small"><font face="monospace"># set fields, etc.</font></div><div class="gmail_default" style="font-size:small"><font face="monospace">layer.CreateFeature(outFeature)</font><br></div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">Think I could accomplish it via SQL statements and ds.ExecuteSQL(), and I've found examples using psycopg2 (or SQLAlchemy) instead. Just wondering if it's directly possible using Python OGR/GDAL.</div><div class="gmail_default" style="font-size:small"><br></div><div><div dir="ltr" data-smartmail="gmail_signature"><div dir="ltr">Thanks,<br>Gerard</div></div></div></div>