使用 JPQL 查询使用 UCanAccess 驱动程序的 MS-Access 数据库

使用时


JPA 2.1

日蚀链接 2.5.2

UCanAccess 4.0.4

我们遇到的问题是表将用引号命名。这是因为底层实现并没有真正意识到要使用哪种方言,导致与 MSAccess 不兼容。这会导致例如表注释,如@Table(name = "\"EMPLOYEE\"").


为了解决这个问题,我们必须在 orm.xml 中包含:


...

    <persistence-unit-defaults>

        <delimited-identifiers />

    </persistence-unit-defaults>

...


largeQ
浏览 93回答 1
1回答

繁星点点滴滴

在 persistence.xml 中包含一个 trget-database 属性:<property name="eclipselink.target-database" value="org.eclipse.persistence.platform.database.AccessPlatformDelimiterConfig"/>在类路径中添加一个新类:package org.eclipse.persistence.platform.database;public class AccessPlatformDelimiterConfig extends AccessPlatform {&nbsp; &nbsp; private static final long serialVersionUID = 7034590043310425678L;&nbsp; &nbsp; public AccessPlatformDelimiterConfig() {&nbsp; &nbsp; &nbsp; &nbsp; super();&nbsp; &nbsp; &nbsp; &nbsp; this.tableQualifier = "";&nbsp; &nbsp; &nbsp; &nbsp; this.startDelimiter = "[";&nbsp; &nbsp; &nbsp; &nbsp; this.endDelimiter = "]";&nbsp; &nbsp; }}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java