2017년 5월 25일 목요일

Oracle ORA-00900 에러


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;
세미콜론(;) 문제 일부 도구에서는 세미콜론이 문제 될 수 있음

해결법:

  1. SQL 문장을 다시 점검
    → 키워드, 테이블명, 문장 구조 확인하기.

  2. PL/SQL이라면 블록으로 실행
    → 예를 들면 SQL*Plus나 SQL Developer에서

    BEGIN
      dbms_output.put_line('Hello');
    END;
    /
    

    이렇게 /를 붙여서 실행해야 해요.

  3. 툴 차이 확인
    → SQL Developer, Toad, DBeaver 같은 툴에서는 명령어가 다르게 먹을 수 있음.
    예를 들면 SHOW 명령어는 오라클 기본 SQL에 없어요.

댓글 없음:

댓글 쓰기

🧠💥 이탈리안 브레인롯(Italian Brainrot): 인터넷 밈의 신세계 🇮🇹

요즘 SNS에서 유행하는 이상한 말투, 이탈리아 억양, 그리고 피자 이모지 🤌🍕. 이게 다 뭔지 궁금하셨다면, 바로 이 ‘이탈리안 브레인롯(Italian Brainrot)’ 때문입니다! 중독성 있는 이 밈, 지금부터 쉽고 재밌게 알아볼게요. ...