[ORACLE] ORA-00904 : 부적합한 식별자 invalid identifier

    ORA-00904 : 부적합한 식별자 invalid identifier 알아보기

    ORA-00904 오류는 "invalid identifier" 즉, 부적합한 식별자로 인해 발생하는 오류입니다. 이 오류는 다음과 같은 경우에 발생할 수 있습니다.

    원인

    1. 존재하지 않는 컬럼명을 사용한 경우
    2. 존재하지 않는 테이블명을 사용한 경우
    3. 알 수 없는 식별자를 사용한 경우
    4. 사용자 권한이 부족하여 해당 객체에 접근할 수 없는 경우
    5. 존재하지 않는 열 이름을 적었을 경우
    6. 정의된 열 이름과 대소문자가 일치하지 않는 경우
    7. 작은 따옴표와 큰따움표 사용을 잘못 하였거나 경우
    8. 열 이름에 특수문자가 들어가 있는 경우
    9. 열 이름에 Oracle 예약어를 사용 하였을 경우

    해결방법

    1. 존재하지 않는 컬럼명이나 테이블명을 사용한 경우, 해당 컬럼명이나 테이블명이 올바른지 확인합니다. 스펠링이나 대소문자를 확인해보고, 존재하지 않는 객체를 사용하고 있는지 다시 한번 확인합니다.
    2. 알 수 없는 식별자를 사용한 경우, 해당 식별자가 올바른지 확인합니다. 특히, 별칭(alias)을 사용한 경우, 식별자가 별칭으로 대체되었는지 다시 한번 확인합니다.
    3. 사용자 권한이 부족한 경우, 해당 객체에 대한 권한을 부여해야 합니다. 사용자 계정에 필요한 권한이 부여되어 있는지 확인하고, 권한이 없는 경우 권한을 부여해야 합니다.

    참고로 "바인드 변수가 부족합니다." OR "일부 변수가 결합되지 않습니다." 라는 에러메세지는

    - 조건절이 갯수보다 값을 대입하는 바인드 변수가 적은 경우입니다.

    - 쉽게 말해서 방이 5개가 있고, 그방에 전부 한명씩 들어가야 하는데 하나의 방에 덜들어가

    4개의 방에만 들어가 있을경우 입니다.

    마지막으로 오타가 없는지 확인을 해줍시다.^^

    ORA-00904: look for invalid identifier

    The ORA-00904 error is an "invalid identifier" error that is caused by an invalid identifier. This error can occur in the following cases:

    cause

    • When a column name that does not exist is used
    • When a table name that does not exist is used
    • If an unknown identifier is used
    • Insufficient user privileges to access the object
    • If you write a column name that does not exist
    • If the defined column name and case do not match
    • Incorrect use of single and double quotation marks
    • Column names contain special characters
    • Oracle reserved words used in column names

    Resolution

    • If a column or table name that does not exist is used, check that the column or table name is correct. Check the spelling or capitalization, and double-check that you are using an object that does not exist.
    • If an unknown identifier is used, verify that the identifier is correct. In particular, if an alias is used, double check that the identifier has been replaced with an alias.
    • If the user lacks privileges, he or she must grant privileges on the object. You will need to ensure that your user account has been granted the required privileges, and grant them if they are not.

    댓글

    Designed by JB FACTORY