일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- java
- break
- DB 제약조건
- 접근제한자
- C언어 표준 라이브러리
- 데이터베이스
- 오라클
- Oracle
- 자바연산자
- DAO
- JSP
- o(log n)
- DEFAULT
- JavaSwing
- oracle db
- 빅오표기법
- java접근제어자
- 자바
- Vo
- C#접근제어자
- DATABASE
- 메이븐업데이트
- mvc디자인패턴
- sql
- O(n)
- Oracle SQL Developer
- oracle developer
- C#접근제한자
- DTO
- DB
성장일기 : 문과생의 개발 여정 (งᐖ)ว ( ᐛ )و
SQL Develper / Database / 시퀀스 (Sequence) 본문
1102 수업내용
--20_시퀀스.sql
/*
#시퀀스 (Sequence)
- 기본키로 사용하기 편리하도록 번호를 자동으로 생성해주는 db object
CREATE SEQUENCE 시퀀스명
[START WITH n] - 시작번호 설정
[INCREMENT BY n] - 증가 숫자 설정
[MAXVALUE n | NOMAXVALUE] - 최대 숫자 설정
[MINVALUE n | NOMINVALUE] - 최소 숫자 설정
[CYCLE | NOCYCLE] - 숫자 순환 여부 설정
[CACHE n | NOCACHE] - 번호를 미리 만들어놓을 양을 설정
*/
-- 시퀀스 데이터 딕셔너리 뷰
SELECT * FROM user_sequences;
현재 만들어져있는
-- 시퀀스 생성하기
CREATE SEQUENCE coffee_seq1; -- 모든것이 기본값인 시퀀스
CREATE SEQUENCE fruit_id_seq START WITH 10 INCREMENT BY 10;
-- 테스트용 테이블 dual : 연습을 위한 테이블 1칸,1행만 있음
SELECT * FROM dual;
SELECT 10*10 FROM dual;
-- 시퀀스.nextval : 다음번호를 사용한다 (다시는 이전 번호로 돌아갈 수 없다.)
SELECT coffee_seq1.nextval FROM dual;
처음 crtl+enter
두번째
SELECT fruit_id_seq.nextval FROM dual;
-- 시퀀스.currval : 현재 번호를 확인한다 (맨 처음에는 사용할 수 없다)
-- nextval을 한번이라도 실행한 후에 확인 가능하다
SELECT coffee_seq1.currval FROM dual;
DELETE FROM fruits;
ALTER TABLE fruits ADD CONSTRAINT fruit_id_pk PRIMARY KEY(fruit_id);
-- 시퀀스를 사용해 테이블에 insert하기
-- 기본키 값을 직접 계산하면 힘들기 때문에 시퀀스를 만들어 사용한다
INSERT INTO fruits(fruit_id, fruit_name, fruit_price)
VALUES (fruit_id_seq.nextval, 'Apple', 1234); -- 3번정도 생성
SELECT * FROM fruits;
CREATE SEQUENCE bank_waiting_seq
START WITH 10 INCREMENT BY 20
MINVALUE 10 MAXVALUE 100 CYCLE NOCACHE;
SELECT bank_waiting_seq.nextval FROM dual;
-- 시퀀스 삭제하기 : DROP SEQUENCE 시퀀스명;
-- 시퀀스 수정하기 : ALTER SEQUENCE 시퀀스명 [옵션은 create sequence와 같음]
'백엔드개발 > DATABASE' 카테고리의 다른 글
DB, Oracle SQL Developer 계정관리 (0) | 2023.11.07 |
---|---|
Oracle SQL / Database 유용한 함수 (0) | 2023.11.07 |
SQL Developer / 트랜잭션 Transaction (0) | 2023.11.07 |
oracle developer / ON DELETE (0) | 2023.11.07 |
Oracle SQL Developer 테이블 수정하기 (새 컬럼 추가, 삭제, 변경) (0) | 2023.11.07 |