Erhalten Sie org.hibernate.sql.ast.produce.ConversionException beim Ausführen des Programms

Post a reply

Smilies
:) :( :oops: :chelo: :roll: :wink: :muza: :sorry: :angel: :read: *x) :clever:
View more smilies

BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: Erhalten Sie org.hibernate.sql.ast.produce.ConversionException beim Ausführen des Programms

by Guest » 20 Feb 2025, 11:53

Sehen Sie diesen Fehler beim Ausführen dieses Programms, das die Löschung enthält. Ich habe HQL versucht, die Daten zu holen. Dieses Mal funktioniert es gut. Ich weiß nicht, wo das Problem ist. < /P>

Code: Select all

INFO: HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform]
Exception in thread "main" org.hibernate.sql.ast.produce.ConversionException: A [url=viewtopic.php?t=11587]problem[/url] occurred in the SQM interpreter : Could not resolve unique-identifier to SqmFrom
at org.hibernate.sql.ast.produce.spi.FromClauseIndex.findResolvedTableGroupByUniqueIdentifier(FromClauseIndex.java:132)
at org.hibernate.sql.ast.produce.spi.FromClauseIndex.resolveTableGroup(FromClauseIndex.java:57)
at org.hibernate.query.sqm.tree.from.SqmFrom.locateMapping(SqmFrom.java:49)
at org.hibernate.sql.ast.produce.spi.FromClauseIndex.findResolvedTableGroup(FromClauseIndex.java:110)
at org.hibernate.query.sqm.consume.spi.BaseSqmToSqlAstConverter.visitEntityIdentifierReference(BaseSqmToSqlAstConverter.java:746)
at org.hibernate.query.sqm.consume.spi.BaseSqmToSqlAstConverter.visitEntityIdentifierReference(BaseSqmToSqlAstConverter.java:213)
at org.hibernate.query.sqm.tree.expression.domain.SqmEntityIdentifierReferenceSimple.accept(SqmEntityIdentifierReferenceSimple.java:51)
at org.hibernate.query.sqm.consume.spi.BaseSqmToSqlAstConverter.visitRelationalPredicate(BaseSqmToSqlAstConverter.java:1774)
at org.hibernate.query.sqm.consume.spi.BaseSqmToSqlAstConverter.visitRelationalPredicate(BaseSqmToSqlAstConverter.java:213)
at org.hibernate.query.sqm.tree.predicate.RelationalSqmPredicate.accept(RelationalSqmPredicate.java:72)
at org.hibernate.sql.ast.produce.sqm.spi.SqmDeleteToSqlAstConverterSimple.visitDeleteStatement(SqmDeleteToSqlAstConverterSimple.java:64)
at org.hibernate.sql.ast.produce.sqm.spi.SqmDeleteToSqlAstConverterSimple.interpret(SqmDeleteToSqlAstConverterSimple.java:31)
at org.hibernate.query.sqm.internal.SimpleDeleteQueryPlan.executeUpdate(SimpleDeleteQueryPlan.java:47)
at org.hibernate.query.sqm.internal.QuerySqmImpl.doExecuteUpdate(QuerySqmImpl.java:367)
at org.hibernate.query.internal.AbstractQuery.executeUpdate(AbstractQuery.java:1404)
at com.ankit.hibn8.App.main(App.java:51)
< /code>
app.java
package com.ankit.hibn8;

import java.util.List;
import java.util.Random;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.hibernate.query.Query;
import org.hibernate.query.Query;
import com.ankit.hibn8.AlienDO;
public class App {
@SuppressWarnings("deprecation")
public static void main(String[] args) {
Configuration config = new Configuration().configure().addAnnotatedClass(com.ankit.hibn8.AlienDO.class);
SessionFactory sessFactory = config.buildSessionFactory();
Session session = sessFactory.openSession();
Transaction t = session.beginTransaction();
String hql = "delete from AlienDO where alienId = :id";
Query query = session.createQuery(hql);
query.setParameter("id", 381);

int result = query.executeUpdate();
System.out.print(result);
session.flush();

t.commit(); // Commit the transaction
session.close();
sessFactory.close();
}
}
< /code>
aliendo.java:
package com.ankit.hibn8;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;

@Entity
@Table(name="alien_table")
public class AlienDO {
@Id
@Column(name="alien_id")
private int alienId;

@Column(name="alien_name")
private String alienName;

@Column(name="alien_age")
private int alienAge;

public int getAlienId() {
return alienId;
}
public void setAlienId(int alienId) {
this.alienId = alienId;
}
public String getAlienName() {
return alienName;
}
public void setAlienName(String alienName) {
this.alienName = alienName;
}
public int getAlienAge() {
return alienAge;
}
public void setAlienAge(int alienAge) {
this.alienAge = alienAge;
}
@Override
public String toString() {
return "AlienDO [alienId=" + alienId + ", alienName=" + alienName + ", alienAge=" + alienAge + "]";
}
}
< /code>
HiBERNate.cfg.xml:




com.mysql.cj.jdbc.Driver
root
jdbc:mysql://localhost:3306/ankitdatabase
root
org.hibernate.dialect.MySQL8Dialect
true
update


< /code>
pom.xml:

4.0.0

com.ankit
spring-hibn8
0.0.1-SNAPSHOT
jar

hibn8
http://maven.apache.org


UTF-8




junit
junit
3.8.1
test



org.hibernate.orm
hibernate-core
6.0.0.Alpha1



com.mysql
mysql-connector-j
8.0.31





Top