Hibernate HQL Ausgabe erwarten IDENT gefunden "*"

Ich gehen müssen ganzen Daten von der relativen Tisch, so bin ich mit somethink wie diese (ich würde es verwenden, in sql)

    private static final String SELECT_OOPR_TO_SEND = "SELECT R.* " +
                                                      "FROM offerOrderProjectRel R, offerOrder O, project P " +
                                                      "WHERE P.id = R.project_id and O.id = R.offer_order_id " +
                                                      "and O.type = 'ORDER' and (P.status = 'PENDING' or P.status ='PROTECTED')" ;
; 


    @SuppressWarnings("unchecked")
    public List<OfferOrderProjectRel> findAllOfferOrderToSendToSalesmans() {
        Query q = getSession().createQuery(SELECT_OOPR_TO_SEND);
        List<OfferOrderProjectRel> list = q.list();
        return list;
    }

Nach dem Stapellauf diesem code bin ich immer den Fehler :

org.hibernate.hql.intern.ast.QuerySyntaxException: erwarte IDENT,
gefunden, der '*' in Zeile 1, Spalte 10 [SELECT R. VON offerOrderProjectRel
R, offerOrder A, Projekt P WHERE P. id = R. project_id und O. id =
R. offer_order_id und O. type = 'BESTELLUNG' und (P. status = 'in Bearbeitung' oder
P. status ='GESCHÜTZT')]

So, wie bekomme ich alle Daten aus Spalte R mit hibernate?

Haben Sie versucht, nur R statt R.*?
Bearbeiten Sie die Abfrage auf "select R from". Weglassen R.* Dies ist HQL-syntax.
HQL arbeiten mit Entitäten, Felder und Verbände. Nie mit Tabellen und Spalten. Es ist nicht das gleiche wie SQL. Wenn es war, wäre es mit dem Namen SQL. Lesen Sie die Hibernate-Dokumentation.
danke Euch Jungs, ja, ich habe zu Lesen, Dokumentation, my bad. Danke!

InformationsquelleAutor lukaszrys | 2013-10-22

Schreibe einen Kommentar