728x90
반응형
ORA-12733: 정규 표현식이 너무 깁니다.
ORA-12733 : regular expression too long
발생 원인
오라클 정규표현식 함수 REGEXP_LIKE 사용하여 조회 시 발생했다.
원인은 작성된 정규표현식의 허용 크기를 초과하였기 때문이다.
해결 방법
해결 방법은 위 Docs에 따르면 보다 짧은 정규표현식을 사용하여 해결하여야 한다.
그렇다면, 최대 허용 크기는 얼마나 될까?
아래의 내용에 따르면 512 byte가 최대 허용 범위이다.
즉, 사용할 정규표현식의 크기를 512 byte가 안 넘게 해줘야 한다.
필자의 경우 약 1000 byte 가량의 긴 정규표현식을 사용하여 위 에러가 발생하였고
해당 정규 표현식을 512 byte를 넘지 않게 분할하여 조회하거나, 정규표현식을 최적화하는 방법밖에 없는 것 같다.
무조건 512 byte를 넘는 정규표현식을 사용해야 한다면,,
프로세스를 바꿔야 할지도..?
좀 더 생각해봐야겠다 😢
참고 및 같이 보면 좋을 자료
https://asktom.oracle.com/pls/apex/asktom.search?tag=limitations-of-regexp-functions
https://docs.oracle.com/cd/B12037_01/server.101/b10759/conditions018.htm
728x90
반응형
'Oracle' 카테고리의 다른 글
[Oracle] ORA-00972 : 식별자가 너무 깁니다 (0) | 2021.10.04 |
---|---|
[Oracle] ORA-01789 : 질의 블록은 부정확한 수의 결과 열을 가지고 있습니다. (0) | 2021.09.26 |
[Oracle] 쿼리튜닝 : 인덱스를 타지 않는 SQL(쿼리) (0) | 2021.08.22 |
[Oracle] 테이블명 & 컬럼명 변경하기 (0) | 2021.08.15 |
[Oracle] 테이블 컬럼 추가, 수정, 삭제하기 (0) | 2021.08.15 |
댓글