Oracle 오류 정리

Nux·2021년 11월 23일
0

오류정리

목록 보기
5/5
post-thumbnail
post-custom-banner

테이블 내용을 못 읽어올 때

  • 테이블을 추가/수정/삭제 할 수 있는 권리 부여 해 볼 것
GRANT INSERT,SELECT,UPDATE,DELETE ON 테이블명 TO 아이디;

ORA-01950: 테이블스페이스 'USERS'에 대한 권한이 없습니다.

ALTER USER 아이디 DEFAULT TABLESPACE USERS QUOTA UNLIMITED ON USERS;

ORA-65096: 공통 사용자 또는 롤 이름이 부적합합니다.

system계정에서
alter session set"_oracle_script" = true; 입력

java.sql.SQLException: No suitable driver found for jdbc:oracle:thin:@localhost:1521:xe

  • DB와의 연결문제
  • lib안에 jdbc 드라이버 확인 할 것

시퀀스 값이 설정한대로 늘어나지 않을 때

  • 생성한 sequence 조회
select * from user_sequences;
  • 아래 식으로 last number를 실제 값으로 맞춤
10이어야 할 seq가 40이 되었을 때

-- 증가값을 -30으로 재 설정 후 sequence를 실행 하여 last number를 10으로 맞춤
alter sequence 시퀀스명 increment by -30;
select 시퀀스명.nextval from dual;

-- 증가값을 1로 재설정
alter sequence 시퀀스명 increment by 1;
select 시퀀스명.nextval from dual;
  • cache_size를 사용하지 않도록 설정
alter sequence 시퀀스명 nocache;

ORA-01758: 테이블은 필수 열을 추가하기 위해 비어있어야 합니다

  • 모든 컬럼이 삭제 된 상태여야 변경 가능

별칭 부적합한 식별자


  • SQL문 처리 순서: FROM > WHERE > GROUP BY > HAVING > SELECT > ORDER BY
  • 별칭을 부여한 것은 select문이므로 where절 실행 시 아직 별칭이 없어서 오류나는 것
  • where절에 별칭없는 윈도우함수(over~)를 그대로 쓰면 오류가 발생하니, 서브쿼리로 해결
  • 서브쿼리의 select절에서 정한 별칭은 서브쿼리 밖에서도 사용 가능하니 참고

검색 기능 구현 시 주의사항

where 제목컬럼 like '%%'
and 내용컬럼 like '%%'
  • 제목과 내용을 한번에 검색 하는 기능을 위처럼 구현했는데, 어떤 검색어는 나오고 어떤 검색어는 나오지 않음

바른구문

where (제목컬럼 like '%%'
or 내용컬럼 like '%%')

  • or에 주의
  • 조건에 or가 들어가면 괄호로 묶어주어야 함
post-custom-banner

0개의 댓글