【发布时间】:2013-03-06 12:28:14
【问题描述】:
我的耳朵项目有一个奇怪的问题:
我已经在我的实体类上放了正确的注释:
@Entity
@Table(name = "PRODUCTS")
但是当我在 glassfish 3.1.2.2 上部署我的应用程序时,我发现 JPA 使用小写字符创建了表
我正在使用 EclipseLink 2.4.1
请帮帮我。
【问题讨论】:
-
不,我试图强制使用转义字符的名称,但它没有工作,这就是我创建这篇文章的原因
-
开启日志记录。我相信您会看到 eclipselink 使用与您定义的名称完全相同的名称发出 create SQL。默认情况下,数据库大多不区分大小写,因此除非表/列名被分隔,否则在 MySQL 上将显示为小写。
-
@Chris: afaik,mysql 在 *nix 系统上默认区分大小写
-
@DenisTulskiy 我相信你是对的,但他没有说他使用的是哪个操作系统。我相信 MySQL 会在 Windows 上以小写形式返回表名,无论它是用什么大小写创建的,如果它没有分隔的话。其他像 Oracle 会以大写形式返回它。
标签: java mysql jpa glassfish eclipselink