I'm having trouble adding a field to a PostGIS table using PyQGIS. Here's my code:
from PyQt4.QtCore import QVariant
from qgis.core import *
inLayer = iface.activeLayer()
provider = inLayer.dataProvider()
# add field
field = QgsField('test_field', QVariant.String)
inLayer.startEditing()
provider.addAttributes([field])
inLayer.updateFields()
# commit
inLayer.commitChanges()
The commit fails and the PostGIS log shows an error:
2015-10-27T08:13:28 1 Erroneous query: ALTER TABLE "received"."env" ADD COLUMN "test_field" returned 7 [ERROR: syntax error at end of input
LINE 1: ALTER TABLE "received"."env" ADD COLUMN "test_field"
Seems the call to PostGIS fails to include the column type. Is this a bug, or am I going about this the wrong way?
No comments:
Post a Comment