[sql]TABLE - CREATE

*새로운 테이블을 생성하고자 합니다.
 아래 코드는 테이블을 생성하는 예제입니다.

    CREATE TABLE [ 테이블 이름 ](
        [컬럼 이름]    [컬럼 데이터 타입](데이터 크기)    [옵션]
    );

    CREATE TABLE employees(
        employee_id        VARCHAR2(100)    NOT NULL,   --무조건 입력해야 합니다.
        employee_name   VARCHAR2(100)    NOT NULL,
        employee_tel       NUMBER(13)`                         --무조건 입력하지 않아도 됩니다.
    );

*TABLESPACE
 1. 테이블이 저장될 테이블스페이스를 지정하는 절이다.
 2. 테이블스페이스(Tablespace)는 데이터베이스 오브젝트 내 실제 데이터를 저장하는
    공간이다. 이것은 데이터베이스의 물리적인 부분이며, 세그먼트로 관리되는 모든
    DBMS에 대해 저장소(세그먼트)를 할당한다.

    CREATE TABLE [ 테이블 이름](
        [컬럼 이름]    [컬럼 데이터 타입](데이터 크기)    [옵션]
    )TABLESPACE [테이블 스페이스 이름];

*COMENT ON TABLE/COLUMN ... IS ... 
 테이블과 컬럼에 COMMENT을 남기는 명령어 입니다.
 (나중에)SELECT을 통해 (컬럼에 설정된)COMMENT을 조회할 수 있습니다.

 사용방법은 아래와 같습니다.
    --먼저 새로운 테이블을 생성합니다.
    CREATE TABLE EX_TABLE(
        ex_id        VARCHAR2(100)    NOT NULL,
        ex_name   VARCHAR2(100)
    );

 1. 테이블 COMMENT 추가
    COMENT ON [테이블 이름] IS [COMMENT]

    COMENT ON EX_TABLE IS "예제 테이블입니다.";

  2. 컬럼 COMMENT 추가 
    COMENT ON [테이블 이름].[컬럼] IS [COMMENT]

    COMENT ON EX_TABLE.ex_id IS "사람 고유 id입니다.";

*등록된 테이블, 컬럼의 COMMENT을 조회합니다.
    --테이블 전체 comment 조회
    SELECT  table_name, table_type, comments
    FROM USER_TAB_COMMENTS     
    WHERE comments IS NOT NULL; 

    --컬럼 전체 comment 조회
    SELECT table_name, column_name, comments
    FROM USER_COL_COMMENTS
    WHERE comments IS NOT NULL;

*테이블을 생성한 뒤, 제약조건을 설정하고자 합니다.
https://tcpschool.com/mysql/mysql_constraint_primaryKey

ALTER TABLE [테이블 명] ADD
CONSTAINT [테이블 명_PK PRIMARY KEY] (컬럼명)
USING INDEX TABLESPACE ???

CREATE INDEX ... ON ... (컬럼명)
TABLESAPCE ....

--GRANT/REVOKE OBJECT PRIVILEGS
GRANT SLECT, INSERT, UPDATE, DELETE, REFERENCES, ALTER, INDEX, DEBUG
READ ON [TABLE] TO COLUMN

GRANT SELECT ON [TABLE] TO [COLUMN]

CREATE OR REPLACE SYNONYM ERP_APP_XRMFT_SHIPTO_MST FOR RMS_MGR.XRMFT_SHIPTO_MST

댓글

이 블로그의 인기 게시물

[sql] 테이블 생성