2011-09-03 3 views
2

나는이 유형의 열을 msql 테이블 열에 넣습니다.이 열은 비트를 나타냅니다. columnValue & 플래그 = columnValueJPQL 비트 플래그를 쿼리

내가 시도 :

나는 여러 플래그가 모두 설정되어있는 개체를 선택해야

javax.persistence.Query q = getEntityManager().createQuery("SELECT u FROM Userattributes u WHERE u.myValueFlags & mask := mask"); 
q.setParameter("mask", mask); 

을하지만 난에 구문 오류가 있습니다

에 의해 발생 : java.lang.IllegalArgumentException : 예외가 발생했습니다 EntityManager에서 쿼리를 만드는 동안 : 예외 설명 : 구문 분석 오류 구문 분석 [SELECT u FROM Userattributes u WHERE u.userattributesPK.attributeID = : attributeId 및 u.myValueFlags & 마스크 : = 마스크], 줄 1, 열 103 : 예기치 않은 토큰 [마스크]. 내부 예외 : NoViableAltException (78! = [652 : 1 : simpleConditionalExpressionRemainder [Object left]가 [Object 노드]를 반환합니다. (n = comparisonExpression [왼쪽] | (n1 = NOT)? n = ) 조건이없는 식 | null), 왼쪽] | IS (n2 = NOT)? n = isExpression [(n2! = null), 왼쪽])]] at org.eclipse.persistence.internal.jpa.EntityManagerImpl.createQuery (EntityManagerImpl.java : 1328) com.sun.enterprise.container.common.impl.EntityManagerWrapper.createQuery (EntityManagerWrapper.java:425에서 ) JPQL은 비트 연산을 지원하지 않기 때문에 할 수없는

답변

3

.

관련 문제