Usage scenario: Using @query ("HQL statement") under Spring data JPA
And then you get an error when the project starts.
HQL statement error: ANTLR. Noviablealtexception:unexpected Token:rolename
Take a closer look at the code:
@Query(Value= " fromRole asR Left JoinR.department asD Left JoinD.company asCwhere"+"(:d epartmentid is NULL orD.id=:d Epartmentid) "+ " and(: CompanyID is NULL orC.id=: CompanyID) "+ " and(: RoleName is NULL orR.name=: RoleName) ") Fun Searchrole (@Param("DepartmentID") DepartmentID:Long?= NULL, @Param("CompanyID") CompanyID:Long?= NULL, @Param("RoleName") rolename:string?= NULL ): Set<Role>
The problem lies in:
RoleName itself is really no problem, but it's on the side (the parentheses do have a problem
Find it in front of the parentheses tighten and the parentheses above the indentation is not the same, okay, that's disgusting.
Solve the problem:
Replace: The Chinese brackets near the rolename are replaced with English brackets to solve the problem.
Spring boot JPA hql statement error: ANTLR. noviablealtexception:unexpected Token:rolename