我有一个查询没有产生任何结果,即使基础数据库中肯定有与查询对应的数据。查询是由hibernate运行的,我想通过直接在mysql中运行查询来验证它。有人可以帮助我从hibernate转换为SQL,以便我可以看到查询是否产生任何结果?
以下是eclipse控制台所说的正在运行的hibernate查询:
select
drugword0_.name as name1_12_2_,
concepts1_.word as word1_12_4_,
drugconcep2_.rxcui as rxcui2_13_4_,
drugconcep2_.rxcui as rxcui1_10_0_,
atoms3_.rxcui as rxcui3_10_5_,
atoms3_.rxaui as rxaui1_39_5_,
atoms3_.rxaui as rxaui1_39_1_,
atoms3_.rxcui as rxcui3_39_1_,
atoms3_.str as str2_39_1_
from drugwords drugword0_
left outer join drugwordsconsoJunction concepts1_ on drugword0_.name=concepts1_.word
left outer join drugconcepts drugconcep2_ on concepts1_.rxcui=drugconcep2_.rxcui
left outer join rxnconso atoms3_ on drugconcep2_.rxcui=atoms3_.rxcui where drugword0_.name=?
如何将hibernate查询转换为MySQL数据库的SQL查询的工作语法?为什么你认为我的hibernate查询没有返回任何结果?休眠映射是否设置错误?
为了帮助人们了解hibernate的起点,我发布了一些来自我的spring mvc hibernate app的代码。 注意:为了简化此帖子,我已将一些相关代码上传到文件共享网站。您可以点击以下链接查看代码:
DrugWord
实体的代码为at this link
DrugConcept
实体的代码为at this link
DrugAtom
实体的代码为at this link
在MySQL中创建基础数据表的代码是at this link
填充基础数据表is at this link的代码
其中一个表格is at this link的数据
另一个表is at this link的数据。 (这是一个大文件,可能需要一些时间来加载。)
为了帮助人们可视化基础数据,我将包含一个打印屏幕,其中显示了基础表中数据的前2个查询结果,如下所示: