NutzCN Logo
问答 关于 Trans.exec(new Atom() {} 方法的疑问
发布于 3158天前 作者 qq_2bfc8e76 2779 次浏览 复制 上一个帖子 下一个帖子
标签:

Trans.exec(new Atom() {
public void run() {
dao.execute(Sqls.create("update or delete ..."));
dao.insert(vdmServiceinfo);
dao.insert(vdmServiceinfohst);
}
});

代码如上(dao为NutDao),dao.insert(vdmServiceinfo);有问题报错,但是dao.execute(Sqls.create("update or delete ..."));这里面的内容会被执行。请问这是我用的不对吗?(nutz版本nutz-1.r.54)

6 回复

mysql对吧, 那就是表引擎为 不支持事务 的MyISAM了

@wendal 我用的是oracle数据库

用的是Oracle,
Trans.exec(new Atom() {
public void run() {
dao.clear(class,Criteria);
dao.insert(vdmServiceinfo);
dao.insert(vdmServiceinfohst);
}
});
dao.clear(class,Criteria);也同样存在如题的情况。

@qq_c2949aa2 完整堆栈贴出来,报错的堆栈信息.

如果不是mysql数据库,唯一的可能性就是Trans嵌套的问题

@wendal 我用错了,我在Trans那个方法里面用了try catch,自己捕获了异常并且还没有抛出去。

添加回复
请先登陆
回到顶部