[mysql] insert 구문 작성할때 컬럼명 주의... 프로그래밍

이번에 내부 DB 리뉴얼 작업하면서 

컬럼명 및 구조변경이 많이 됐는데

여기서 중요한건.. 아.... 시바....

 

INSERT INTO 테이블명 ( 컬럼명, 컬럼명 ) VALUES ( '값', '값' ) 

 

이렇게 들어간다.. 근데...

이번에 컬럼명을 name_zh-rCN 이런식으로 들어가는게 있는데

저기 보이는 - (바) 요놈때문에 syntax 에러가 뜨는것이 아닌가.. 

syntax 에러 보기전까지 insert 가 안되서 개고생했다. 아놔...

 

그래서 찾아보니까 컬럼명 을 `name_zh-rCN` 으로 감싸주면 해결되는 문제였네...

옛날에 배운거 같은데... 사실 안써도 무방해서 그냥 잊고 살았다.

안쓰면 가독성도 좋아지고, 안써도 잘되니까... ㅠㅠ

컬럼명, 테이블명은 신텍스 에러가 날수있으므로 ' 가 아닌 ` 얘로 감싸주길 바람...

 

확실히 알아둘것은

 

' <-- 이건 리터럴 값.

` <-- backtick 이라고 부르며 테이블 명, 컬럼명 등에 예약된 문자나 공백등을 사용할 수 있도록 하기 위해 사용됨.

Tag :

Leave Comments