웹개발 관련

[ORACLE] 테이블 생성 > 주석 추가 > PK INDEX 생성 > PK설정 > 시퀀스 생성 > 트리거 생성

반응형

단순 게시판 형식의 ORACLE 테이블 추가

 

 

테이블 생성 > 주석 추가 > PK INDEX 생성 > PK설정 > 시퀀스 생성 > 트리거 생성 (시퀀스 자동증가)

 

 

-- 테이블 추가

CREATE TABLE BOARD

(

SEQ           INTEGER NOT NULL ,

SUBJECT           VARCHAR2(200) NULL ,

CONTENT           CLOB NULL ,

VIEW_COUNT        INTEGER DEFAULT  0  NULL ,

REG_MEMBER        INTEGER DEFAULT  0  NOT NULL ,

REG_DATE          DATE DEFAULT  SYSDATE  NOT NULL ,

UPD_MEMBER        INTEGER DEFAULT  0  NOT NULL ,

UPD_DATE          DATE DEFAULT  SYSDATE  NOT NULL ,

DEL_YN            CHAR(1) DEFAULT  'N'  NOT NULL ,

 

);

 

 

-- 주석 설정

COMMENT ON TABLE BOARD IS '게시판'; 

COMMENT ON COLUMN BOARD.SEQ IS '일련번호'; 

COMMENT ON COLUMN BOARD.SUBJECT IS '제목'; 

COMMENT ON COLUMN BOARD.CONTENT IS '내용'; 

COMMENT ON COLUMN BOARD.VIEW_COUNT IS '조회수'; 

COMMENT ON COLUMN BOARD.REG_MEMBER IS '등록자'; 

COMMENT ON COLUMN BOARD.REG_DATE IS '등록일'; 

COMMENT ON COLUMN BOARD.UPD_MEMBER IS '수정자'; 

COMMENT ON COLUMN BOARD.UPD_DATE IS '수정일'; 

COMMENT ON COLUMN BOARD.DEL_YN IS '삭제여부'; 

 

 

 

-- PK INDEX생성

CREATE UNIQUE INDEX BOARD ON BOARD(SEQ ASC);

 

 

-- PK설정

ALTER TABLE BOARD ADD CONSTRAINT  BOARD PRIMARY KEY (SEQ);

 

 

-- 시퀀스생성 (SEQ_SEQ 라는 이름으로 시퀀스 생성)

CREATE SEQUENCE SEQ_SEQ

START WITH 1

INCREMENT BY 1

NOMAXVALUE

NOMINVALUE;

 

 

-- 트리거 생성

CREATE OR REPLACE TRIGGER TEST.TRIGGER_BOARD 

BEFORE INSERT 

ON TEST.BOARD

REFERENCING NEW AS  NEW OLD AS  OLD

FOR EACH ROW

BEGIN

SELECT SEQ_SEQ.NEXTVAL INTO :NEW.SEQ  FROM DUAL;

END;

 

 

반응형