2007. 6. 12. 17:54
데이터베이스/Oracle
출처 : www.oracleclub.com
SQL>CREATE SEQUENCE emp_seq
START WITH 1
INCREMENT BY 1
MAXVALUE 100000 ;
sequence created.
시작 값이 1일고 1씩 증가하고, 최대값이 100000만이 되는 시퀀스를 생성했습니다.
SQL>INSERT INTO emp(empno, ename, hiredate ) VALUES(emp_seq.NEXTVAL, 'julia' , sysdate);
empno는 컬럼값을 입력할 때 일일이 다음 값을 기억하지 않아도 NEXTVAL을 사용하여
자동으로 입력할 수 있습니다.
CURRVAL : 현재 값을 반환 합니다. .
NEXTVAL : 현재 시퀀스값의 다음 값을 반환 합니다.
SQL>SELECT emp_seq.CURRVAL FROM DUAL ;
CURRVAL
---------
1
SQL>SELECT emp_seq.NEXTVAL FROM DUAL ;
NEXTVAL
---------
2
SQL>CREATE SEQUENCE emp_seq
START WITH 1
INCREMENT BY 1
MAXVALUE 100000 ;
sequence created.
시작 값이 1일고 1씩 증가하고, 최대값이 100000만이 되는 시퀀스를 생성했습니다.
SQL>INSERT INTO emp(empno, ename, hiredate ) VALUES(emp_seq.NEXTVAL, 'julia' , sysdate);
empno는 컬럼값을 입력할 때 일일이 다음 값을 기억하지 않아도 NEXTVAL을 사용하여
자동으로 입력할 수 있습니다.
CURRVAL : 현재 값을 반환 합니다. .
NEXTVAL : 현재 시퀀스값의 다음 값을 반환 합니다.
SQL>SELECT emp_seq.CURRVAL FROM DUAL ;
CURRVAL
---------
1
SQL>SELECT emp_seq.NEXTVAL FROM DUAL ;
NEXTVAL
---------
2