RedlandのPythonバインディングのストレージトランザクション?
-
05-07-2019 - |
質問
現在、RedlandのPythonバインディングをざっと見てきましたが、それを介してストレージエンジンでトランザクションを実行するクリーンな方法を見つけていません。低レベルの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)
これらはストレージ層にも変換されますか?
ありがとう:-)
解決
はい、これは動作するはずです。現在、Pythonラッパーにはモデルクラス用の便利な関数はありませんが、記述したものに似ています:
class Model(object):
...
def transaction_start(self):
return Redland.librdf_model_transaction_start(self._model)
所属していません StackOverflow