0

以下查询未执行。它正在抛出错误。我无法识别错误。它是由hibenate生成的。驱动类 org.gjt.mm.mysql.Driver,方言:org.hibernate.dialect.MySQLDialect 请帮帮我,这是错误。

jdbc:mysql://localhost:3306/mydb

select this_.Student_Id as Student1_8_0_, this_.student Name as student2_8_0_, 
       this_.address as address8_0_, this_.Father Name as Father4_8_0_, 
       this_.Mother Name as Mother5_8_0_, this_.Primary Contact No as Primary6_8_0_,
       this_.Secondary Contact No as Secondary7_8_0_, this_.Occupation as Occupation8_0_, 
       this_.Mode_Id as Mode9_8_0_, this_.Class_Id as Class10_8_0_, 
       this_.Route_No as Route11_8_0_ 
from Tbl_Student this_

如果我select * from Tbl_Student像这样运行它工作正常。

4

2 回答 2

0

您应该使用反引号将用空格分隔的列名括起来:

`this_`.`Father Name`, ..
于 2012-09-05T11:49:34.510 回答
0

那个代码是什么?是你的 HQL 语句还是 Hibernate 生成的 SQL 语句?

如果是您的 HQL 语句:
您必须使用属性名称,即 Java 成员名称作为列名称。

如果是Hibernate生成的SQL语句:
你的映射可能有错误,并且你在Father_Name、Mother_Name、Primary_Contact_No和Secondary_Contact_No中使用了空格而不是下划线。

于 2012-09-05T14:54:57.147 回答