배치 업데이트가 Failed to update database due to a failed batch update ORA-00904: "ISSHARE_COPY": Invalid identifier 로 실패한다.
ORA-00904 는 SQL 이 참조한 컬럼을 테이블에서 찾지 못할 때만 난다. 컬럼이 있는데 타입이 다르면 이 오류가 아니라 다른 오류가 난다.
| 오류 | 상황 |
|---|---|
| ORA-01722 | 숫자 컬럼에 숫자가 아닌 값 |
| ORA-01843 / ORA-01861 | 날짜 형식 불일치 |
| ORA-12899 | 문자열이 컬럼 길이 초과 |
컬럼 존재 여부를 먼저 본다.
SELECT column_name
FROM user_tab_columns
WHERE table_name = 'TABLE_NAME'
AND column_name LIKE '%ISSHARE%';
컬럼이 분명히 있는데도 나면 다음을 의심한다.
"isShare_Copy")로 만들었으면 조회할 때도 같은 대소문자와 큰따옴표를 써야 한다. 가장 흔한 원인이다.컬럼이 없으면 ALTER TABLE table_name ADD (ISSHARE_COPY VARCHAR2(1)); 처럼 추가한다.