요즘 뇌를 자극하며 오라클을 공부하고 있습니다.
|
DB 배워볼거랍시고 OCP를 땄지만, 역시 기본부터 배우는게 중요하다고 생각이 드네요.
책이 쓰여진 정보들을 좀더 찾아보기 쉽게 블로그에 하나씩 정리하려합니다.
의사 컬럼 (Pseudo Columns)
테이블에 있는 일반적인 컬럼처럼 행동하기는 하지만 실제로 테이블에 저장되어 있지 않은 컬럼.
[일반]
1. ROWNUM
ROWNUM은 쿼리의 결과로 나오게 되는 각각의 로우들에 대한 순서값을 카리키는 의사컬럼이다.
employees 테이블에서 10건의 정보만 조회하고 싶다면..
ex) SELECT employee_id, last_name, ROWNUM
FROM EMPLOYEES
WHERE ROWNUM <= 10 ;
2. ROWID
ROWID는 테이블에 저장된 각각의 로우들에 저장된 주소값을 가진 의사컬럼이다.
따라서 모든 테이블의 모든 로우들은 오직 자신만의 유일한 ROWID값을 갖고 있다고 할 수 있다.
[SEQUENCE]
시퀀스를 사용할 때, 필수로 쓰이는 의사컬럼
3. CURRNAL
현재 시퀀스 값을 가지고 있다.
4. NEXTVAL
다음에 생성될 시퀀스값을 가지고 있다.
주의 : NEXTVAL 은 어떤 방식으로든 사용되는 즉시, 시퀀스값이 증가한다.
무슨 값을 갖고 있는지 궁금하네? 하면서
SELECT emp_seq.nextval FROM dual ; 요래 검색하면 이미 시퀀스 값은 증가;;
select *
from user_sequences ; 해보면 내가 가지고 있는 시퀀스를 조회할 수 있다.
'DB > Oracle 일반' 카테고리의 다른 글
ORACLE] DBMS_CRYPTO 권한주기(내용없음) (1) | 2012.02.24 |
---|---|
oracle] 원격에서 sysdba 권한으로 접속하려면.. (0) | 2012.02.24 |
Oracle] 오라클 버전별 차이점 정리 (0) | 2012.02.02 |
Oracle] 커맨드상에서 PL/SQL - dbms_output.put_line('Hello, World'); 결과 출력되게 하는 명령어 (0) | 2012.01.11 |
제약조건생성, 추가, 삭제 (1) | 2011.12.28 |