ORA-01756: 단일 인용부를 지정해 주십시오 해결하기 (ORA-01756: quoted string not properly terminated)

ORA-01756: 단일 인용부를 지정해 주십시오 오류는 '(quote 또는 single quote mark) 누락으로 발생합니다. 인용부가 선행에만 있는 경우가 있고 후행에만 있는 경우가 있을 것입니다. 컬럼이 많은 경우에 실수로 누락하거나, 프로그래밍 방식으로 인서트 문을 작성하다가 인용부가 짝수가 아니라 홀수로 들어간 현상이 있을 것입니다. 해당 부분을 찾아서 수정하여 해결할 수 있습니다. 🙂

  • 인용부 위치 선행, 후행 확인하기
  • 인용부 개수 홀수, 짝수 확인하기

ORA-01756: 단일 인용부를 지정해 주십시오

ORA-01756: 단일 인용부를 지정해 주십시오

다음과 같이 후행하는 단일 인용부가 누락된 경우, 발생할 수 있어요! 🙂

SELECT *
  FROM EMP
 WHERE ENAME = 'KING;
ERROR:
ORA-01756: quoted string not properly terminated

선행하는 단일 인용부가 누락된 경우에도 동일하게 ORA-01756: 단일 인용부를 지정해 주십시오 오류가 발생해요.

SELECT *
  FROM EMP
 WHERE ENAME = KING';
ERROR:
ORA-01756: quoted string not properly terminated

다음 문장은 [ 'KING ] 을 조건으로 하여 단일 인용부를 누락해 보았는데요, 문장을 자세히 들여다보면 어딘가에 ' 마크가 빠져있을 것이니 잘 찾아보세요!

SELECT *
  FROM EMP
 WHERE EMPNO = 7839
 AND ENAME = 'KING
 AND JOB = 'PRESIDENT';
ERROR:
ORA-01756: quoted string not properly terminated

단일 인용부가 들어가는 문장이면 어디든 발생할 수 있습니다. 위의 예제는 셀렉트를 보여드렸는데요, 아래와 같이 인서트 시에도 오류가 발생할 수 있어요.

--ORA-01756: 단일 인용부를 지정해 주십시오

INSERT INTO table_name (column_name) VALUES ('param);

ORA-01756 해결 방법

quoted string not properly terminated

Cause: A quoted string must be terminated with a single quote mark ('). 

Action: Insert the closing quote and retry the statement.
댓글 쓰기
가져가실 때, 출처 표시 부탁드려요! 감사합니다. 💗