오라클 오류 해결 방법 – ORA-00907: 누락된 우괄호

Database 처리 중 발생하는 오류에 대해 알아보려고 한다. 오라클을 사용하면서 ORA-00907 오류가 생각보다 종종 발생하는데, 우괄호는 잘 썼는데도 발생하는 오류이기 때문에 초보자들은 당황할 수 있기 때문에 쉽게 해결할 수 있기를 바라며 글을 작성 해보도록 한다.


오라클 오류 해결 방법 – ORA-00907: 누락된 우괄호

첫번째 누락된 우괄호를 찾아라

오라클에서 테이블을 생성하다 종종 발생하는 오류이다. 말 그대로 우괄호가 빠졌을 경우 발생하는 오류이다. 아래 예시로 만든 테이블 생성 쿼리를 확인해보도록 하자.

CREATE TABLE TEMP_TBL
(
TEMP_1 NUMBER(*,0) NOT NULL ENABLE,
TEMP_2 VARCHAR2(20 BYTE) NOT NULL ENABLE,
TEMP_DATE DATE,
CONSTRAINT PK_TEMP_TBL PRIMARY KEY (TEMP_1)
;


위 쿼리와 같이 TEMP_TBL 테이블을 생성하려고 하면 ORA-00907:누락된 우괄호라는 오라클 오류가 발생하게 된다. 이유는 앞서 설명한 것과 같이 오류 로그 그대로 우괄호가 빠졌기 때문이다.

누락된 우괄호를 찾아라


해결 방법 : 누락된 우괄호를 찾아 우괄호를 작성해준다.
아주 간단하게 해결할 수 있는 방법이다. 하지만 쿼리가 간단해 괄호를 잘 못 입력한 부분을 바로 찾을 수 있겠지만, 쿼리가 복잡해진다면 찾는데 눈이 좀 아플테니 참고하면 좋겠다.


두번째 무엇이 또 빠졌다

다른 무엇이 쿼리에서 빠져도 우괄호가 빠진 것과 같은 오라클 오류인 ‘ORA-00907:누락된 우괄호’가 발생할 수 있다. 아래 TEMP_TBL 테이블을 생성하는 쿼리를 한 번 더 확인해보도록 하자.


CREATE TABLE TEMP_TBL
(
TEMP_1 NUMBER(*,0) NOT NULL ENABLE,
TEMP_2 VARCHAR2(20 BYTE) NOT NULL ENABLE,
TEMP_DATE DATE
CONSTRAINT PK_TEMP_TBL PRIMARY KEY (TEMP_1)
);

찾을 수 있다면 당신은 초보가 아니다. 정답은 바로 콤마(,)가 빠졌기 때문에 오라클 오류(ORA-00907:누락된 우괄호)가 발생했던 것이다. 오류 로그는 아래 이미지와 같다.


콤마가 빠진 오류 로그(ORA-00907:누락된 우괄호)


해결 방법 : 누락된 콤마(,)를 찾아 작성해준다.
어렵지 않게 해결할 수 있는 오라클 오류이다. 두 가지 방법을 알고 있다가 해당 오류가 발생했을 경우 아주 쉽게 처리하길 바란다.


참고로 왼쪽 괄호가 빠졌을 경우?

참고로 왼쪽 괄호가 빠졌을 경우

우괄호가 빠졌을 경우 ORA-00097: 누락된 우괄호 오류 로그를 확인할 수 있지만, 좌괄호? 왼쪽 괄호가 빠졌을 경우에는 다른 오류 로그가 확인되니 참고하길 바랍니다.

그 오류 로그는 ORA-00922: 누락된 또는 부적합한 옵션 이라고 출력 된다.

Leave a Comment