2017-10-11 4 views
0
select a.AssignAccOwner,a.AssignBillRate,a.AssignPerdiem from orion_db.assignment as a where a.AssignmentId=25 

Ich bin in der Lage, die obige Abfrage erfolgreich auszuführen. Aber wenn ich versuche, die gleiche Abfrage auszuführen programmatisch mit entityManager.createnativeQuery Ich erhalte die Ergebnisliste als 0 Im Folgenden wird der CodeEntityManager.getResultList() gibt das erwartete Ergebnis nicht zurück

buff.append("select a.AssignAccOwner,a.AssignBillRate,a.AssignPerdiem from orion_db.assignment as a where a.AssignmentId=25"); 
       Query q2 = entityManager.createNativeQuery(buff.toString()); 
     resultList = q2.getResultList();     
     System.out.println("Geting the resultList in dao layer " + q2.getResultList().size()); 
     System.out.println("Geting the result in dao layer " + resultList.size()); 

Dies ist das Ergebnis, das ich im Protokoll erhalten

Geting the resultList in dao layer 0 
Geting the result in dao layer 0 

unten ist die assignment.java Entitätsklasse

/** * Zuordnung von hbm2java erzeugt */

@Entity 
    @Table(name = "assignment") 
    public class Assignment implements java.io.Serializable { 

private static final long serialVersionUID = 1L; 
     private Integer assignmentId;  
     private String assignAccOwner; 
     private BigDecimal assignBillRate; 


     private String assignPerdiem; 

     @Id 
     @GeneratedValue(strategy = IDENTITY) 

     @Column(name = "AssignmentId", unique = true, nullable = false) 
     public Integer getAssignmentId() { 
      return this.assignmentId; 
     } 

     public void setAssignmentId(Integer assignmentId) { 
      this.assignmentId = assignmentId; 
     } 

     @Column(name = "AssignBillRate", precision = 10) 
     public BigDecimal getAssignBillRate() { 
      return this.assignBillRate; 
     } 

     public void setAssignBillRate(BigDecimal assignBillRate) { 
      this.assignBillRate = assignBillRate; 
     } 


     @Column(name = "AssignPerdiem", length = 30) 
     public String getAssignPerdiem() { 
      return this.assignPerdiem; 
     } 

     public void setAssignPerdiem(String assignPerdiem) { 
      this.assignPerdiem = assignPerdiem; 
     } 

     @Column(name = "AssignAccOwner", length = 100) 
     public String getAssignAccOwner() { 
      return this.assignAccOwner; 
     } 

     public void setAssignAccOwner(String assignAccOwner) { 
      this.assignAccOwner = assignAccOwner; 
     } 

    } 
+0

, warum Sie nicht versuchen: 'entityManager.createNativeQuery (" auswählen. AssignAccOwner, a.AssignBillRate, a.AssignPerdiem von orion_db.assignment als wo a.AssignmentId = ");?' 'q2.setParameter (1, 25);' –

+0

@AtimeneNazim ich habe immer noch die gleiche o/p – Thejas

+0

Können Sie Post your assignement Klasse? –

Antwort

0

Es ist nicht der Code Problem war, war ich nicht in der lokalen Datenbank verbunden und daher war ich nicht das erwartete Ergebnis bekommen ..

Verwandte Themen