- 질문 게시판입니다.
Date 16/09/07 15:39:14
Name   YORDLE ONE
Subject   JPA와 Mariadb관련 질문입니다.. 뻘쭘 (해결했습니다)
안녕하세요.. 웹개발자하면서 이번에 jpa 환경에서 처음 일을 하게 될 것 같아서
간단한 프로그램 하나를 jpa +mariadb + spring boot 환경으로 만들어보고 있는데요..

현재 제가 삽질중인 상황이 좀 어이없어서 여쭤보고자 질문올립니다.

일단 쿼리를 하나 예시로 보겠습니다.

1번 쿼리 =
insert into code_table (columnA, columnB) values ('A', 'B') // 안됨

2번 쿼리 =
insert into `code_table` (`columnA`, `columnB`) values ('A', 'B') // 됨

차이를 아시겠나요. 테이블과 컬럼명에 ` 가 붙어있어야 쿼리가 정상 동작을 합니다. -_-;

근데 문제는 말이죠.... JPA에서 자동으로 쿼리를 생성해줄때 컬럼명을 도메인에서 고스란히 가져다가 쓰는데요.


@Entity
public class CodeTable {

@Id
private String columnA;
private String columnB;
}

이상태의 도메인에서 소스를 돌리면, 1번 쿼리처럼 쿼리가 생성되서 execute됩니다. 그리고 예외가 발생하죠.
그래서 이렇게 해봤습니다.


@Entity
@Table(name="`code_table`")
public class CodeTable {

@Id
@Column(name = "`columnA`")
private String columnA;

@Column(name = "`columnB`")
private String columnB;
}

뭐가 바뀌었는지 보이실까요. @Table과 Column 어노테이션을 추가해서 컬럼명을 맞춰주었는데, 저기에다가 ` 를 붙여놓았습니다.
저렇게 하고 소스를 돌리면 정상적으로 execute가 되고, commit까지 완료되면서 해피엔딩을 맞이할 수 있게 되죠.
그런데.. 제가 구글링하면서 대충 찾아본 다른 개발자 블로거분들 도메인 예제를 보면, 저런 어노테이션을 붙이지도 않을 뿐더러, 만약 붙였더라도 `를 붙이진 않았거든요.

그래서 문득 생각이 든게 `를 필수로 받아들이는 마리아디비쪽이 나쁜거 아닌가?..
마리아디비 설정을 내가 이상하게 했나?? 라는 생각이 들더군요.

그래서 드디어 질문입니다만

마리아디비에서 insert 등의 쿼리를 칠 때, `와 같은 특수문자로 컬럼명 테이블명 등을 랩핑하지 않아도 되는 설정법을 혹시 아시는 분이 계신지.. 가르침을 주세요..
혹은 위와 같은 상황을 단순히 피할 수 있는 노하우를 아시는 고수분들.. 가르침을 주십시오 흑흑..
물론 `로 랩핑해서 코딩하면 기능이야 잘 돌겠지만.. 아무리봐도 이거 이상하잖아요 으아아아

이상한 질문 읽어주셔서 감사합니다..


+ 해결

아.. 문제 해결 했습니다. 제가 예시 테이블을 컬럼이 쓸데없이 많은걸로 테스트를 하고 있었는데요.
그중에 예약어가 하나 들어있었던 모양이에요... 컬럼 이름은 order였습니다.
order를 다른 이름으로 바꿔주니 정상적으로 잘 실행이 됩니다.
위에는 예시를 위해 columnA, B로 바꿔서 썼었는데.. 결과적으로는 말도안되는 질문이 되어버렸네요

잠깐이라도 읽으셨던 분들께 혼란을 드려서 죄송해요 -_-;



0


목록
번호 제목 이름 날짜 조회 추천
5744 IT/컴퓨터생각나지 않는 지메일 아이디를 찾는 법이 없을까요?? 1 [익명] 18/10/26 3773 0
15518 IT/컴퓨터다운 중인 파일을 재생해보기 2 매뉴물있뉴 24/01/07 3782 0
2132 IT/컴퓨터컴퓨터 선택할 때 질문입니다. 27 범준 17/01/19 3783 0
1935 IT/컴퓨터어댑터 전압좀 봐 주세요~ 6 black 16/12/19 3783 0
3672 IT/컴퓨터옆집의 휴대폰 oled 관련 질문을 보고 생각나서 질문... 알겠슘돠 17/11/13 3784 0
5933 IT/컴퓨터현 노트8 유저 노트9 vs 아이폰XS 6 벚문 18/11/21 3785 0
1089 IT/컴퓨터윈도우10 한/영판 질문입니다. 2 수박이두통에게보린 16/05/18 3786 0
1517 IT/컴퓨터노트북 고민 당신의 선택은? 8 바밥밥바 16/09/15 3787 0
6510 IT/컴퓨터화웨이 보안성 논란 관련 이슈 5 방사능홍차 19/02/11 3793 0
11368 IT/컴퓨터모니터에서 소리가 나오지 않아요... 13 BLACK 21/04/16 3793 0
6384 IT/컴퓨터A와 B끼리 나눈 문자를 C에게 보내려 합니다 2 헬리제의우울 19/01/24 3794 0
8631 IT/컴퓨터갤럭시탭 구입 질문 6 곰곰이 20/01/14 3795 0
2108 IT/컴퓨터엑셀 질문 4 OshiN 17/01/16 3796 0
3048 IT/컴퓨터웹사이트 제작 서비스 사용해보신 분? 4 April_fool 17/07/14 3796 0
4938 IT/컴퓨터옥외용 디지털 사이니지 내부 디바이스? 4 메존일각 18/07/02 3800 0
2893 IT/컴퓨터그래픽 카드 질문입니다. 6 하나마루 17/06/12 3801 0
12045 IT/컴퓨터인스타그램 앱에서 사진을 올릴 수 없습니다. 2 메존일각 21/08/12 3801 0
15603 IT/컴퓨터파워포인트 발표자료 / 보고서용 그림 잘 만드는 법 12 Keepmining 24/02/06 3802 0
3116 IT/컴퓨터알림기능 원리가 뭘까요? 5 자갈치토스 17/07/28 3806 0
1162 IT/컴퓨터템플릿 클래스 질문드립니다. 7 kaestro 16/06/05 3807 0
1487 IT/컴퓨터JPA와 Mariadb관련 질문입니다.. 뻘쭘 (해결했습니다) YORDLE ONE 16/09/07 3809 0
5103 IT/컴퓨터지도 위의 세력변화 애니메이션 표현에 가장 적합한 툴? 7 메존일각 18/07/21 3809 0
6894 IT/컴퓨터마우스 추천 부탁드립니다. 8 The xian 19/04/05 3810 0
14030 IT/컴퓨터스팀 비밀번호 관련... 6 [익명] 22/10/21 3817 0
1983 IT/컴퓨터메일 첨부파일 용량을 늘리는 법이 있나요? 6 불타는밀밭 16/12/27 3819 0
목록

+ : 최근 2시간내에 달린 댓글
+ : 최근 4시간내에 달린 댓글

댓글