ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Toad for Oracle 스키마(Schema) & 테이블(Table) 생성
    Database/환경설정 2018. 8. 29. 10:52

    Toad for Oracle을 통해 데이터 모델링을 해 스키마(Schema) & 테이블(Table) 직접 만드는 방법에 대해 포스팅. 

     다음과 같은 테이블을 설계했다고 가정하고 생성하도록 한다.

    1.      게시글 : BOARD
    게시글 번호 : BOARD_ID         NUMBER
    제목         : SUBJECT          VARCHAR2 (100 CHAR) NOT NULL
    내용         : CONTENT         CLOB
    작성자       : WRITER           VARCHAR2 (10 CHAR) NOT NULL
    좋아요       : LIKE_COUNT       NUMBER
    작성일       : WRITE_DATE        DATE NOT NULL
     
    2.댓글     : CMNT
    댓글 번호      : CMNT_ID       NUMBER   PK  NOT NULL
    댓글 내용      : CONT           VARCHAR2(4000 CHAR)  NOT NULL
    좋아요         : LIKE_CNT         NUMBER
    싫어요         : HATE_CNT       NUMBER
    작성시간       : WRT_DATE        DATE  NOT NULL
    작성자         : WRTR             VARCHAR2(10CHAR)  NOT NULL     
     
    ※ 데이터 타입.
    숫자 : NUMBER
    고정길이문자() : CHAR(길이)
    가변길이문자() : VARCHAR2(길이)
    날짜 : DATE, TIMESTAMP
     ** 오라클 문자열 최대 길이 4000
    CLOB : 길이 제한 없는 문자열

     
    다음의 4단계를 거쳐 테이블을 생성한다.

    1. 스키마 ( User , Databese라고도 함) 생성
    2. 테이블 생성
    3. Synonyms 생성
    4. Sequence 생성


    1. 스키마 (Schema) 생성

    1-1. system 계정으로 로그인한다.

    1-2. Database - Create - User 클릭

    1-3. User 정보 입력
    User Name 지정
    Password 지정
    - Profile 지정 : Default

    1-4. Tablespace 설정
    2-2. Default Tablespace : Users
    2-3. Temporary Tablespace : temp 
    2-4. Roles / System Privileges

    1-5. Role 탭에서 Copy From 클릭

    1-6. HR 찾은 후 OK.

    1-7. Systemp Privileges - Copy From 클릭

    1-8. HR 클릭 후 OK. 
     - 7, 8번을 통해 HR 스키마의 권한을 복사해 사용하게 되는 것 같다.

    1-9. Session - End Connection 통해 세션 종료 후 생성 한 스키마로 로그인

    2. 테이블 (Table) 생성

    2-1. 스키마명, Tables 맞춘 후 빨간 버튼 눌러 테이블 생성

    2-2. 테이블명 입력 후 칼럼명 추가 및 삭제
    이때 데이터 타입은 사전 데이터모델링시 설계를 따르도록 한다.
    현재는 포스팅 위의 설계에 맞춰 작성 후 OK.

    3. Synonyms 생성
    생성한 테이블에 스키마명 생략 가능하고 호출 가능하도록 해주는 절차이다.
    "스키마명.TABLE명" 으로 작성해야 하는 쿼리문을
    "TABLE명" 만으로 작성 가능하게 해줌.

    3-1. 스키마 브라우저 클릭

    3-2. 생성한 테이블의 Synonyms 탭에서 생성 버튼 클릭

    3-3. Use "Create or Replace" 체크 후 OK. 
    쿼리문 작성시 테이블에 스키마명 생략 가능하게 하기 위한 절차.

    4. Sequence 작성
    데이터 삽입 시 PK를 부여하기 위해 임의의 숫자를 주는 경우가 굉장히 많다. 가장 먼저 생각나는 방법은 1부터 하나씩 늘리는 것이다. 오라클에서는 이를 직접 지정해주지 않으면 사용할 수 없기 때문에 사용할 때마다 하나씩 늘어나는 Sequence를 갖는 변수를 만들어 준다.

    4-1 스키마에서 Sequences 클릭

    4-2. Create Sequence 설정

    SQEUENCE NAME : TABLE_PK_SEQ ( BOARD_ID_SEQ)
    START WITH : 1
    INCREMENT BY : 1
    MIN VALUE : 1
    MAX VALUE : 999999
    CACHE : 2 (실무는 기본값 24 ) 
    CYCLE , ORDER 체크 후 OK

    시퀀스를 미리 만들어 초당 요청률이 높은 상황에 대비하는 역할. 요청이 빈번한 경우에는 시퀀스를 한번에 많이 만들어 놓는 것이 효율적이다.

    4-3. 생성된 Sequence도 Synonyms 등록해준다.

    다음과 같은 쿼리문 등록 후 반복 실행하면 등록해놓은 Sequence변수가 호출될 때마다 값이 하나씩 더해지는 것을 확인할 수 있다. 

    일련 과정을 거치면 테이블에 CRUD 연산이 가능해진다.




Designed by Tistory.