2 homelxy homelxy 于 2016.04.14 13:30 提问

hibernate show_sql 问题

如下后台打印的语句,我的表是sys_user 为何他要写成sysuser0_.id,后面的as id1_58 又是什么意思,有没有这样的文章让我学习下语法啊?
Hibernate:
select
sysuser0_.id as id1_58_,
sysuser0_.active_flag as active_f2_58_,
sysuser0_.cellphone_number as cellphon3_58_,
sysuser0_.cn_name as cn_name4_58_,
sysuser0_.create_by as create_b5_58_,
sysuser0_.create_date as create_d6_58_,
sysuser0_.email as email7_58_,
sysuser0_.password as password8_58_,
sysuser0_.perm_level as perm_lev9_58_,
sysuser0_.update_by as update_10_58_,
sysuser0_.update_date as update_11_58_,
sysuser0_.user_name as user_na12_58_
from
sys_user sysuser0_
where
sysuser0_.active_flag='1'

5个回答

ultramanleoking
ultramanleoking   2016.04.14 15:24
已采纳

sys_user sysuser0_ 这一句就是自动帮你起了个别名了呀,然后通过别名去使用,这要学sql了,跟hibernate没关系

CSDNXIAON
CSDNXIAON   2016.04.14 13:42

关于Hibernate的sql查询返回值的问题
hibernate 执行 sql 的奇怪问题
----------------------同志你好,我是CSDN问答机器人小N,奉组织之命为你提供参考答案,编程尚未成功,同志仍需努力!

Goskalrie
Goskalrie   2016.04.14 14:15

打印出的sql语句是Hibernate处理过的,使用反射和代理之后的结果,都是一些标识与别名,没有找到类似的文章,近期整理一份,同求同类文章。若有,请抄送一份,THKS。

z44421
z44421   2016.04.14 14:24

as 后面接的是别名,这是hibernate处理过的。sysuser0_ 也是你要查的表sys_user的别名

tcytcy123
tcytcy123   2016.04.15 11:38

编译以后的SQL语法,直接复制到数据库中依旧能够执行,代码没问题。实在想研究就看下 HQL的的预编译转换过程

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!