I wonder what's the difference between the ogr2ogr parameters -append and -update.
It seems that they both are used to prevent ogr2ogr from creating a new layer:
-append: Append to existing layer instead of creating a new one
-update: Open existing output datasource in update mode rather than trying to create a new one
There also seems to be a difference between running ogr2ogr on windows and on linux. I use "ogr2ogr -skipfailures -append" to fill some existing oracle tables with data. both ogr2ogr versions are 1.11( Windows 1.11.1 Linux GDAL 1.11.5). On windows the tables are filled with data, on linux there is just an error that the table already exist and no data is inserted.