Transactions de stockage dans les liaisons Python de Redland?
-
05-07-2019 - |
Question
J'ai actuellement feuilleté les liaisons Python pour Redland et je n'ai pas trouvé de moyen propre d'effectuer des transactions sur le moteur de stockage via celui-ci. J'ai trouvé des transactions de modèle dans le module de bas niveau Redland:
import RDF, Redland
storage = RDF.Storage(...)
model = RDF.Model(storage)
Redland.librdf_model_transaction_start(model._model)
try:
# Do something
Redland.librdf_model_transaction_commit(model._model)
model.sync()
except:
Redland.librdf_model_transaction_rollback(model._model)
Cela se traduit-il également vers la couche de stockage?
Merci: -)
La solution
Oui, cela devrait fonctionner. Il n'y a pas de fonctions pratiques pour la classe de modèle dans l'encapsuleur python actuellement, mais elles seraient similaires à ce que vous avez écrit:
class Model(object):
...
def transaction_start(self):
return Redland.librdf_model_transaction_start(self._model)
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow