본문 바로가기
카테고리 없음

ORA-01861

by 자비리뷰 2023. 12. 12.

이 문제를 해결하려고 하루가 걸렸다.

 

dbeaver에서 내가 수동(?)으로 프로시저를 실행시키면 오류가 없이 동작하는데

 

제3의 프로그램에서 프로시저를 호출해 동작할 때는 ORA-01861에러가 발생했다.

 

대표적으로 ORA-01861이 발생하는 경우는

VARCHAR에 DATE를 넣거나 DATE에 VARCHAR를 넣는 경우라는 것을 구글을 통해 알게 됐지만

해당 프로시저는 내가 만든 게 아니고 나보다 훨씬 잘하시고 익숙하신 분들이 만든 것이며,

 

프로시저 안의 TO_DATE이나 TO_CHAR 같은 경우 모두 format이 지정돼 있었으며,

나머지 update나 insert하는 부분도 CAST(**** AS DATE)로 모두 변경 돼 있었다.

 

진짜 어제 하루종일 찾고, 그 전에도 알아봤었는데 결국 해결(?) 했다.

 

뭐 결론적으로 문제는 DATE와 VARCHAR문제였는데

 

왜인지는 모르지만

CAST로 날짜 데이터형식을 바꿔주던 부분을 TO_DATE으로 바꿔주니 오류가 안 뜨게 됐다.