Hibernate erzeugt eine falsche SQL -AbfrageJava

Java-Forum
Anonymous
 Hibernate erzeugt eine falsche SQL -Abfrage

Post by Anonymous »

Ich versuche, Kriterien von Hibernate zu verwenden, um Daten von der Benutzer -Sucheingabe zu erhalten, aber es hat nicht erfolgreich. Ich habe diesen Fehler erhalten: < /p>

schwerwiegend: Ungültiger Spaltenname 'y1 _'. this_.customer_name als y1_, this_.sex as y2_, this_.birthday as y3_, this_.address als y4_, this_.email as y5_ von mstcustomer this_ wo this_.delete_ymd null und y1_ Like? Bestellen Sie durch y0_ asc < /p>
< /blockquote>
Ich habe versucht, diese Abfrage im SQL -Server auszuführen, und tatsächlich wirft es genau den gleichen Fehler aus. Ich weiß nicht, warum Hibernate eine falsche Abfrage erstellt. Bitte helfen Sie mir, sie zu beheben. Vielen Dank!

Code: Select all

// Add criteria
criteria.add(Restrictions.isNull("deleteYMD"));
String customerName = t002Form.getCurrentInput().getCustomerName();

if (!Utils.checkEmpty(customerName)) {
criteria.add(Restrictions.like("customerName", customerName, MatchMode.ANYWHERE));
}
String sex = t002Form.getCurrentInput().getSex();
if (!Utils.checkEmpty(sex)) {
criteria.add(Restrictions.eq("sex", sex));
}
String fromBirthday = t002Form.getCurrentInput().getFromBirthday();
if (!Utils.checkEmpty(fromBirthday)) {
criteria.add(Restrictions.ge("birthday", fromBirthday));
}
String toBirthday = t002Form.getCurrentInput().getToBirthday();
if (!Utils.checkEmpty(toBirthday)) {
criteria.add(Restrictions.le("birthday", toBirthday));
}

// Add paging
int firstResultIndex = t002Form.getCurrentPage() * Constants.PAGE_SIZE;
criteria.setFirstResult(firstResultIndex);
criteria.setMaxResults(Constants.PAGE_SIZE);
criteria.addOrder(Order.asc("customerID"));

// Add projection
criteria.setProjection(Projections.projectionList()
.add(Projections.property("customerID"), "customerID")
.add(Projections.property("customerName"), "customerName")
.add(Projections.property("sex"), "sex")
.add(Projections.property("birthday"), "birthday")
.add(Projections.property("address"), "address")
.add(Projections.property("email"), "email"));

// Map to T002Dto
criteria.setResultTransformer(Transformers.aliasToBean(T002Dto.class));
List listCustomer = Utils.castList(T002Dto.class, criteria.list());
< /code>
Hibernate -Konfiguration: < /p>




org.hibernate.dialect.SQLServerDialect
true
50
true




< /code>
Hibernate -Mapping < /p>




















< /code>
Pojo -Klasse < /p>
public class Customer {

private int customerID;
private String customerName;
private String sex;
private String birthday;
private String email;
private String address;
private Timestamp deleteYMD;
private Timestamp insertYMD;
private int insertPsnCD;
private Timestamp updateYMD;
private int updatePsnCD;

// Getters, Setters and Constructor
}

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post