JPA 설정 sqlserver 데이터 소스 모드에서 "***"근처에 문법 오류가 발생했습니다.
"10"근처에 문법 오류가 발생했습니다.오류는 틀림없이 sql 서버 데이터에서 sql 문장을 조회하는 데 문제가 있고 문법 오류입니다.
해결 방법:
A: JPA 프레임워크 때문에 Dao의 데이터베이스 작업 문장을 모두 봉인했습니다.일반적인 상황에서 ql 문장을 볼 수 없습니다.그래서 JPA 설정 데이터베이스 파일을 바탕으로 sql 문장 출력 설정을 합니다.
저는 jdbc입니다.properties 파일에서 다음을 설정합니다.
jpa.showSql=true # JPA 。
B:그리고 프로그램을 다시 실행합니다. 컨트롤러에서 sql 문장을 추출하여 sql 서버 클라이언트에서 실행합니다.결과는 여전히'10'부근에 문법 오류가 있었다.그래서 지금 이 ql문장의 문법을 관찰해야 합니다.
이 ql문은 다음과 같습니다.
select erpinvento0_.CINVCODE as CINVCODE1_31_,
erpinvento0_.I_ID as I2_31_,
erpinvento0_.BACCESSARY as BACCESSA3_31_,
erpinvento0_.BATOMODEL as BATOMODE4_31_,
erpinvento0_.BBARCODE as BBARCODE6_31_,
erpinvento0_.BBILLUNITE as BBILLUNI7_31_,
erpinvento0_.BBOMMAIN as BBOMMAIN8_31_,
erpinvento0_.BFREE2 as BFREE41_31_,
erpinvento0_.BFREE3 as BFREE42_31_,
erpinvento0_.BFREE4 as BFREE43_31_,
erpinvento0_.BFREE5 as BFREE44_31_,
erpinvento0_.bFree5 10 as bFree45_31_, ........
이 ql문장을 관찰하면 마지막 줄 bFree5 10에 빈칸이 많아서 ql문장 문법 오류가 발생했습니다.
C:지금 여기에 문제가 있음을 알았습니다. 그러면 이 ql의 BFree5 10은 JPA 실체 맵의 속성 필드에 대응합니다.그러면 실체가 JPA에 비치는 과정에서 문제가 생긴다.엔티티 구성을 보려면 다음과 같이 하십시오.
4
@Column(name = "BFREE5 10", precision = 22, scale = 0)
public BigDecimal getBfree10() {
return this.bfree10;
}
실체가column 주석에 있는name 속성 설정에 빈칸이 많아서 데이터베이스에 비추어 조회 문장을 생성할 때 A의 sql 조회가 발생했고'10'부근에서 문장 오류가 발생했다.마지막으로, 이column 이름 필드 정보를 다시 설정해서 정확하게 일치시켜야 합니다.Dao 베이스에서 조회할 때 정상적으로 조회할 수 있습니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.