Ich verstehe, dass Spatialite von jeweils einem Benutzer / einer Maschine verwendet werden soll. Wenn die Daten jedoch auf dem Server gespeichert sind, gibt es keine Garantie dafür, dass jemand auf einem anderen Computer nicht dieselbe Datenbank öffnet und verwendet. Hat jemand Erfahrung damit, wie QGIS und Spatialite auf eine Mehrbenutzerumgebung reagieren? In den meisten Fällen ist die Ebene eine schreibgeschützte Ebene. Mit QGIS können mehrere Personen dieselben Shapefiles lesen. Dies ist eine ähnliche Situation. Was passiert, wenn mehrere Personen gleichzeitig Bearbeitungssitzungen geöffnet haben?
qgis
spatialite
AndrewM
quelle
quelle
Antworten:
SQLite arbeitet mit einem Wins-Modell für die letzte Bearbeitung, was zu Problemen mit mehr Gewicht als Schreibblöcken führt. In der QGIS / SQLite-Beziehung gibt es keine Nachverfolgung von Bearbeitungssitzungen. Selbst wenn Sie einen einzelnen Writer-Block (SQLITE_BUSY) erhalten haben, kann QGIS einfach nicht bearbeitet werden und gibt nur einen Fehler zurück. Senden Sie die Änderung dann erneut.
Im Folgenden wird die Behandlung dieses Ereignistyps und die Behandlung der erneuten Übermittlung durch QGis erläutert.
https://github.com/qgis/QGIS/blob/a3447dd9a346f6d5e08451b7c5666a37046435bc/src/core/spatialite/headers/spatialite/sqlite3.h#L1881-L1943
quelle