【发布时间】:2017-09-05 09:53:43
【问题描述】:
我想知道如何解决这个错误:
org.hibernate.MappingException: No Dialect mapping for JDBC type: -1
at org.hibernate.dialect.TypeNames.get(TypeNames.java:56)
at org.hibernate.dialect.TypeNames.get(TypeNames.java:81)
at org.hibernate.dialect.Dialect.getHibernateTypeName(Dialect.java:369)
我也参考了这个问题 How to fix “No Dialect mapping for JDBC type: -1” error in java
但我没有得到想要的解决方案。
我的查询是:
Query langQuery = null;
List<Object[]> langList = null;
StringBuilder strQuery = new StringBuilder();
strQuery.append("SELECT lw.langWordId,lw.wordText,lt.translatedContent from language_word lw inner join language_translation lt on ");
strQuery.append(" lw.langWordId=lt.langWordId where lw.isActive="+Boolean.TRUE+" ");
langQuery = session.createSQLQuery(strQuery.toString());
langList = langQuery.list();
langList = langQuery.list(); 在这一行我收到此错误。
我的 pom.xml 文件有依赖关系:
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>3.6.0.Final</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate</artifactId>
<version>3.2.6.ga</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate</artifactId>
<version>3.2.3.ga</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>ejb3-persistence</artifactId>
<version>1.0.2.GA</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-annotations</artifactId>
<version>3.3.1.GA</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-commons-annotations</artifactId>
<version>3.3.0.ga</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>3.1.0.GA</version>
</dependency>
我有什么使命吗?
我在检索列表时使用了 addscalar,但仍然出现该错误。
任何帮助将不胜感激。
【问题讨论】:
-
那么,您使用的是哪个数据库(包括完整版),您使用的是哪种 Hibernate 方言?
-
我正在使用 mysql,我如何检查休眠方言?
-
您使用的是哪个版本的 MySQL,以及您使用的是哪种 Hibernate 方言。请具体和完整。休眠方言应该在你的 persistence.xml 或者代码中的某个地方指定
-
我目前正在使用 mysql 5.0 和 hibernate 3.0。
-
我很难相信您正在使用如此古老的 MySQL 和 Hibernate 版本,但即便如此,它们也不是 Hibernate 方言。