Notice
Recent Posts
Recent Comments
Link
160x600
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
Tags
- sql
- pythone
- 회귀모델
- 데이터베이스
- pandas
- tensorflow
- SQL예제
- keras
- 오라클
- 데이터
- HeidiSQL
- 예측
- 시각화
- Deep Learning
- Database
- 데이터 분석
- 훈련
- MariaDB
- 해석
- Oracle
- 정확도
- 데이터전처리
- 데이터 가공
- DB
- 머신러닝
- python기초
- 데이터 수집
- sklearn
- python
- 딥러닝
Archives
- Today
- Total
코딩헤딩
오라클 데이터베이스 [ORA-00904, ORA-00060, ORA-00907] 오류 본문
728x90
JOIN, 트랜잭션, 함수 사용 시 자주 마주치는 오류
1. ORA-00904: invalid identifier
- 의미 : 잘못된 컬럼명 또는 식별자를 사용함
- 원인 : 오타, 대소문자 구분 ("ColumnName" 처럼 따옴표 사용 시 구분), 존재하지 않는 컬럼 호출
SELECT usernmae FROM users;
-- 'username' 오타
-- 해결방법
SELECT username FROM users;
-- SQL Developer에서는 컬럼 자동완성 기능 사용 권장
2. ORA-00060: deadlock detected while waiting for resource
- 의미 : 두 트랜잭션이 서로가 가진 자원을 요청하면서 교착 상태 발생
- 원인 : 두 개 이상의 세션이 서로 잠근 데이터에 접근 시도, 트랜잭션 간 Lock 순서가 꼬임
세션 1: UPDATE A → UPDATE B
세션 2: UPDATE B → UPDATE A
→ 서로 Lock 걸고 대기 → 교착 상태 발생
-- 해결 방법
-- 트랜잭션 순서 일관되게 유지, 가능하면 자동 커밋 사용, 교착 세션 강제 종료
SELECT * FROM dba_blockers;
SELECT * FROM dba_waiters;
ALTER SYSTEM KILL SESSION 'sid,serial#';
3. ORA-06512: at "스키마.프로시저", line N
- 의미 : PL/SQL에서 오류 발생 위치를 표시하는 메시지 (원인 아님, 추적 정보)
- 원인 : 함수, 프로시저 내부에서 발생한 예외, 실제 오류는 ORA-00000번과 함께 출력됨
ORA-06512: at "HR.CALC_SALARY", line 14
ORA-01403: no data found
-- 해결 방법
-- 실제 오류 (예: ORA-01403)를 먼저 보고 해결, 이후 ORA-06512는 자연스럽게 사라짐,
-- 예외 처리 블록 추가로 방지 가능
BEGIN
-- 로직
EXCEPTION
WHEN NO_DATA_FOUND THEN
NULL; -- 또는 로그 처리
END;
728x90
'데이터베이스 > ORACLE' 카테고리의 다른 글
오라클 데이터베이스 [ORA-00979, ORA-12801, ORA-01555] 오류 (0) | 2025.06.09 |
---|---|
오라클 데이터베이스 [ORA-00955, ORA-00060, ORA-00907] 오류 (1) | 2025.06.06 |
오라클 데이터베이스 [ORA-01843, ORA-00911, ORA-00907] 오류 (0) | 2025.06.03 |
오라클 데이터베이스 [ORA-03113, ORA-02049, ORA-01652] 오류 (0) | 2025.05.31 |
오라클 데이터베이스 [ORA-00932, ORA-04098, ORA-01555] 오류 (0) | 2025.05.29 |