ORA-00900: invalid SQL statement
ORA-00900: sql 문이 부적합합니다
sql 문법이 잘못되어서 발생한다.
에러범위가 너무 광범위하다. 구문이 잘못되었다는 것을 보여주는 예를 들면
SELECT 1 FROM DUAL
에서 SELECT 의 'T' 를 빼고
SELEC 1 FROM DUAL
실행시키면

sql문에 오타여부와 잘못 된 구문이 있는지 확인해야한다.
ORA-00900: invalid SQL statement
오류는 "잘못된 SQL 문장" 이라는 뜻이에요.
쉽게 말하면, 오라클이 이해할 수 없는 문법이 들어갔을 때 이 에러가 납니다.
주요 원인들은 다음과 같아요:
원인 |
설명 |
예시 |
문법 오류 |
SQL 문장이 오라클 문법에 맞지 않음 |
select * form table_name; (form 오타) |
지원 안 되는 명령어 사용 |
오라클에 없는 문법 사용 |
show databases; (MySQL 문법) |
PL/SQL 문장을 SQL에서 실행 |
BEGIN, END 같은 PL/SQL을 SQL에서 실행하려고 함 |
BEGIN dbms_output.put_line('Hello'); END; |
세미콜론(;) 문제 |
일부 도구에서는 세미콜론이 문제 될 수 있음 |
|
해결법:
-
SQL 문장을 다시 점검
→ 키워드, 테이블명, 문장 구조 확인하기.
-
PL/SQL이라면 블록으로 실행
→ 예를 들면 SQL*Plus나 SQL Developer에서
BEGIN
dbms_output.put_line('Hello');
END;
/
이렇게 /
를 붙여서 실행해야 해요.
-
툴 차이 확인
→ SQL Developer, Toad, DBeaver 같은 툴에서는 명령어가 다르게 먹을 수 있음.
예를 들면 SHOW
명령어는 오라클 기본 SQL에 없어요.