JPA 2:使用@Table注释的异常

时间:2013-01-25 09:49:12

标签: mysql hibernate orm annotations jpa-2.0

当我尝试使用@Table(" \" Employee \" ")注释时,它会生成异常。有以下例外

Exception in thread "main" javax.persistence.PersistenceException: org.hibernate.exception.SQLGrammarException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '" Employee "  (name, salary) values ('Jimmy', 35000)' at line 1

不使用转义字符,employee表生成成功,但我想生成表名“Employee”。

2 个答案:

答案 0 :(得分:1)

Hibernate作为JPA实现不仅是堆栈中的技术,它会影响数据库表名称的区分大小写的处理方式。数据库的容量和设置方式确实起着至关重要的作用。

在MySQL中,表名的敏感性通过lower_case_table_names系统变量来控制。例如,在Windows中,默认情况下,小写名称是不区分大小写的比较。此外,如果操作系统没有区分大小写的文件系统,则结果是表名不能区分大小写。

答案 1 :(得分:0)

我问的是同样的,因为我看到默认值是小写的。