QGis, Spatialite, Python, не удается добавить объект на слойPython

Программы на Python
Ответить
Anonymous
 QGis, Spatialite, Python, не удается добавить объект на слой

Сообщение Anonymous »

Пожалуйста, помогите мне кто-нибудь, советы CoPilot не помогли.
Я пробовал этот код с автоинкрементом идентификатора и без него...

dbPfad = "C:\QGis\MyDb.sqlite"
layerObjekte = QgsVectorLayer(f"dbname='{dbPfad}' table='objekte' (geometry) sql=", "layerObjekte", "spatialite")
points = [QgsPointXY(100, 100),
QgsPointXY(200, 100),
QgsPointXY(200, 200),
QgsPointXY(100, 200),
QgsPointXY(100, 100)]
square_geom = QgsGeometry.fromPolygonXY([points])
new_feature = QgsFeature()
new_feature.setFields(layerObjekte.fields(), True)
new_feature.setGeometry(square_geom)
если не new_feature.geometry().isGeosValid():
return
new_feature.setAttribute("lfdnr", 1)
new_feature.setAttribute("status", 0)
если не new_feature.isValid():
return
success = LayerObjekte.addFeature(new_feature)

Все верно, вот ошибки, о которых сообщает catch:

Datenanbieterfehler
SQLite-Fehler: unbekannte Ursache
INSERT INTO "objekte"("geometry","lfdnr","status") VALUES (ST_Multi(GeomFromWKB(?, 25832)),?,?)

переведено на английский:

Ошибка поставщика данных
Ошибка SQLite: неизвестная причина
INSERT...

Есть идеи?

Подробнее здесь: https://stackoverflow.com/questions/798 ... ayer-fails
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»