오늘의 빵빵이 자세히보기

아빠의 IT

Oracle ) 열을 사용할 수 없습니다 오류, column not allowed here error

오늘의빵빵이 2021. 7. 2. 13:42
728x90


안녕하세요. 빵빵아빠입니다.
Oracle을 사용하다보면 '열을 사용할 수 없습니다'라는 에러가 발생할 수 있습니다.
영어로는 'column not allowed here'라고 출력됩니다.

한글 번역이 이상해서 바로 알기 어렵습니다.
저는 아래와 같이 발생 했습니다.

명령의 1 행에서 시작하는 중 오류 발생 -
INSERT INTO PPANG_USER (user_id, user_name, user_level) VALUES (1, 박채은, 1)
오류 발생 명령행: 1 열: 68
오류 보고 -
SQL 오류: ORA-00984: 열을 사용할 수 없습니다
00984. 00000 -  "column not allowed here"
*Cause:    
*Action:

테이블 스키마는 다음과 같습니다.

CREATE TABLE ppang_user (
	user_id		INT NOT NULL,
	user_name	NVARCHAR2(16) NOT NULL,
	user_level 	INT NOT NULL,
	PRIMARY KEY (user_id)
);


이건 칼럼에 맞지 않는 형식의 값을 넣으려고 해서 발생한 것입니다.
저는 user_name이 NVARCHAR2(16)인데 따옴표 없이 박채은을 써서 insert 시도를 해서 오류가 발생했습니다.

INSERT INTO PPANG_USER (user_id, user_name, user_level) VALUES (1, '박채은', 1);

 

와 같이 실행시키면 오류가 해결됩니다.

테이블의 칼럼 타입과 쿼리문에서의 타입을 비교하시면 수정 가능합니다.
감사합니다.

728x90