INSERT - SELECT문을 실행하다가 에러 발생🫨🫨
ORA-00913: too many values (값이 너무 많습니다.)
해당 오류가 발생하는 경우는
INSERT문을 수행할 때 VALUES 절에 나열한 열 개수보다 많은 값을 입력할 때 주로 발생한다.
INSERT
INTO USER (ID, NAME, PWD)
VALUES ('id', 'name', 'pwd', 'hh')
이처럼 데이터를 입력하려는 컬럼 수보다 삽입하려는 값이 많을 때 발생한다.
해결하는 방법은 👉👉👉 간단하게 컬럼수만 동일하게 맞춰주면 된다!
INSERT
INTO USER (ID, NAME, PWD)
VALUES ('id', 'name', 'pwd')
추가적으로 INSERT때 뿐 아니라
WHERE 절의 하위 쿼리가 너무 많은 열을 반환할 때도 발생한다.
SELECT *
FROM USER
WHERE ID IN ( SELECT *
FROM ORDER
WHERE PAY_YN = 'N' )
모든 열을 반환하는 것이 아니라 한 컬럼만 반환하도록 수정하면 된다.
SELECT *
FROM USER
WHERE ID IN ( SELECT ORDER_ID
FROM ORDER
WHERE PAY_YN = 'N' )
[출처]
'Oracle' 카테고리의 다른 글
[Oracle] USER_SOURCE - 프로시저, 함수 등 내용 조회하기 (0) | 2025.02.19 |
---|---|
[Oracle] UNION과 UNION ALL 차이 (0) | 2025.02.12 |
[Oracle] ORA-01791: SELECT식이 부적합합니다. (0) | 2024.12.12 |
[Oracle] 정수 소수점 표현하기 (0) | 2024.10.07 |
[Oracle] sql developer JDK 경로 변경하기 (0) | 2024.03.03 |