본문 바로가기

Error Log

[오라클 오류] '열을 사용할 수 없습니다' 해결과 궁금증 (ORA-00984)

SQL Insert문을 작성하다 오류가 났다.

 

다음과 같은 Insert문을 입력하였다.

 

[ 오류 상황 ]

INSERT INTO tbl VALUES(1, "aaa", TO_DATE("20171201", "YYYYMMDD"));
                                                               *
1행에 오류:
ORA-00984: 열을 사용할 수 없습니다

* 표시가 맨 뒤에 찍혀있는 것을 보니 원인을 유추하기 어려웠다.

구글링 결과 " 가 문제라는 것을 알게 되었다.

 

[ 해결 ]

INSERT INTO tbl VALUES(1, 'aaa', TO_DATE('20171201', 'YYYYMMDD'));

해결 방법 : SQL 명령문을 입력할 땐 " 대신 ' 를 사용해야 한다.

 

그 밖의 경우는

  • INSERT 시 문자열을 ' 로 표시하지 않았을 때
  • 내장함수 등의 이름이 오타로 잘못 표시됨

의 경우가 있다고 하니 참고.

 


 

해결 방법을 보고 나니 막연히 아 맞다 그랬지 ㅎ 싶었다.

그런데 왜 일까?

왜 SQL 에선 작은 따옴표를 쓸까...

한 번도 궁금해본 적 없지만 문득 궁금해졌다.

 

그리고 구글링 해도 안 나온다.

일종의 약속이라고 생각하며 넘겨본다...