[C-1-3] 데이터베이스 테이블 및 시퀀스 설계

2020. 1. 20. 19:40Project C (SBMS)/Project C 파트1

반응형

회원 테이블도서 테이블, 시퀀스를 생성한다.

회원 테이블 : 회원 정보를 저장하기 위한 테이블 객체

도서 테이블 : 각 개인이 보유한 책장정보를 관리할 테이블 객체

시퀀스 : 도서 테이블의 일련번호 순번을 자동으로 부여하는 시퀀스 객체

회원 테이블 :TBL_MEMBER

컬럼명 컬럼타입 제약조건 설명
USERID VARCHAR2 (50) PRIMARY KEY 아이디
USERPW VARCHAR2 (100) NOT NULL 비밀번호
USERNAME VARCHAR2 (100) NOT NULL 이름
REGDATE DATE DEFAULT SYSDATE 등록일자
UPDATEDATE DATE DEFAULT SYSDATE 갱신일자
ENABLED CHAR (1) DEFAULT '1' 허용 여부

 

더보기
create table TBL_MEMBER (
USERID      varchar2(50) primary key,
USERPW      varchar2(100) not null, 
USERNAME    varchar2(100)  not null,
REGDATE     date default SYSDATE,
UPDATEDATE  date default SYSDATE,
ENABLED     char(1) default '1'
);

 

도서 테이블 : TBL_BOOK

컬럼명 컬럼타입 제약조건 설명
BOOKNUM NUMBER PRIMARY KEY 일련번호 (SEQ TABLE)
SHELFNAME VARCHAR2 (200) NOT NULL 책장이름
USERID VARCHAR2 (50) FOREIGN KEY FK(USERID) > PK(USERID)
BOOKTITLE VARCHAR2 (200) NOT NULL 책제목
WRITER VARCHAR2 (200)   저자
PUBLISHER VARCHAR2 (200)   출판사
PURCHASEDATE DATE DEFAULT SYSDATE 구매일
PRICE NUMBER NOT NULL 책 가격
BOOKREVIEW VARCHAR2 (2000) NOT NULL 독서 감상평

 

더보기
create table TBL_BOOK (
    BOOKNUM number primary key,
    SHELFNAME varchar2(200) not null,
    USERID varchar2(50),
    BOOKTITLE varchar2(200) not null,
    WRITER varchar2(200),
    PUBLISHER varchar2(200),
    PURCHASEDATE date default SYSDATE,
    PRICE number not null,
    BOOKREVIEW varchar2(2000) not null,
    constraint FK_TBL_BOOK_USERID foreign key(USERID)
    references TBL_MEMBER(USERID)
);

 

시퀀스 : SEQ_BOOK_BOOKNUM

증가치 시작치 최대치 최소치
1 0 9999999 0

 

더보기
create sequence SEQ_BOOK_BOOKNUM
increment by 1
start with 0
maxvalue 9999999
minvalue 0;

 

테스트 데이터 삽입

더보기
insert into TBL_MEMBER (
    USERID, USERPW, USERNAME
)values(
    'tester', '1111', '테스터'
);

insert into TBL_BOOK (
    BOOKNUM, SHELFNAME, USERID, BOOKTITLE, WRITER, PUBLISHER, PRICE, BOOKREVIEW
)values(
    SEQ_BOOK_BOOKNUM.nextval, 'IT', 'tester', '웹 프로그래밍', '미노쿠마', '미노북스', 50000, '이해하기 쉬워요.'
);

commit;

 

반응형