huacaodan 2012-03-23 11:07
浏览 1821
已采纳

mysql Can not modify more than one base table through a join view

最近项目中用到了视图,用于查询数据。项目所使用的框架是spring+hibernate+ext。在查询某一产品的信息时老报 Can not modify more than one base table through a join view,我只是查询数据,又没有用视图去更新数据.而在查询其它产品信息时又不会出现这个问题,查询条件都是一样的。是在如下代码中报的错:
String hql = "select count(*) from TransactionsInfo "+where;
Query query = session.createQuery(hql);
[color=red]int count = ((Long)query.list().get(0)).intValue();[/color]
在红色字体处报的这个错误信息。上面代码中的where是查询条件。

希望有高手能指点一二

补充:
我看在这查询这一产品的时候打印了一条update语句,我不知道这条update语句是怎么出来的。我也没有设置触发器。

  • 写回答

1条回答 默认 最新

  • iteye_9444 2012-03-23 13:44
    关注

    把你的hql语句打印出来,放在数据库执行一下,看查出来的结果是什么?
    还有就是把int count = ((Long)query.list().get(0)).intValue();一步一步写出来 看每一步的输出是否正确

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?