首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Apache Jena SDB事务支持

Apache Jena SDB事务支持
EN

Stack Overflow用户
提问于 2017-08-18 22:03:21
回答 1查看 174关注 0票数 0

我正在使用Apache Jena Api over SQL数据库(Micrtosoft server),称为JENA SDB,当我想以交互方式访问数据库时,我有问题。当我使用Jena TDB时,事务是受支持的,但是当我以透明的方式使用JENA TDB时,java.lang.UnsupportedOperationException: transactions not supported抛出了异常。

来自Jena TDB的代码片段如下所示:

代码语言:javascript
复制
Dataset dataset =  return TDBFactory.createDataset("datasetLocation");
dataset.begin(ReadWrite.WRITE);
//...

Jena SDB中不工作的代码片段如下:

代码语言:javascript
复制
   StoreDesc storeDesc = new StoreDesc(LayoutType.LayoutTripleNodesHash, 
   DatabaseType.SQLServer);
   SDBConnection sdbConn = new SDBConnection(getConnection());
   Store store = StoreFactory.create(storeDesc, sdbConn);
   Dataset dataset =DatasetStore.create(store);
   dataset.begin(ReadWrite.WRITE);
   //...this throws the exception

我的问题是,既然我的需求是从TDB迁移到SDB (我知道这不是推荐的),有没有办法以事务方式使用Jena SDB

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-08-19 01:39:48

它总是事务性的-默认情况下,它是自动提交的,这可能是非常昂贵的。

您可以直接操作JDBC连接设置,也可以使用任何模型的TransactionHandler,因为同一数据集的所有模型都映射到相同的代码以作用于JDBC连接,JDBC连接也可以使用:

Store.getConnection().getTransactionHandler()

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45758595

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档