简体   繁体   中英

Jpa select query to a new object gives error

When assign select JPA It gives an error as bellow. What is the issue?

You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '.finance.resources.StudentForBankStatement(s.admission_no,s.first' at line 1`

Query

@Query( value = "select NEW com.finance.resources.StudentForBankStatement(s.admission_no,s.first_name,s.last_name) from student s where branch_id = ?1", nativeQuery = true )
List<StudentForBankStatement> getStudentByClassIdBranchId( long branchId );

Helper Class

@Data
@AllArgsConstructor
@NoArgsConstructor
public class StudentForBankStatement
{
    private String AdmissionNo;
    private String firstName;
    private String lastName;
}

In your query you have nativeQuery=true which this is not, thus the error. This should be JPQL. Fix your query to something like:

@Query( value = "select NEW com.finance.resources.StudentForBankStatement(s.admissionNo, s.firstName, s.lastName) from Student s where s.branchId = :1")

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM