본문 바로가기
국비/SQL

SQL_DDL

by haheaven 2021. 9. 7.

 

DDL : Data Definition Language

데이터 정의어

CREATE : 데이터베이스 객체 생성

ALTER : 데이터베이스 객체 수정

DROP : 데이터베이스 객체 삭제

 

 

 

 

- 만들어 본 E-R 다이어그램 

- E-R 다이어그램 -> 데이터베이스 생성

DROP TABLE ORDERS;
DROP TABLE PRODUCT;
DROP TABLE CUSTOMER;

-- 고객 테이블 
CREATE TABLE CUSTOMER(
     CUSTOMER_NO   NUMBER,
     ID          VARCHAR2(10)   NOT NULL,
     PWD         VARCHAR2(15)   NOT NULL,
     ADDRESS     VARCHAR2(40));

-- 제품 테이블    
CREATE TABLE PRODUCT(
    PRODUCT_NO    NUMBER,
    PRODUCT_NAME  VARCHAR2(20),
    PRICE         NUMBER);

-- 주문 테이블 
CREATE TABLE ORDERS(
      ORDER_NO     NUMBER   NOT NULL,
      CUSTOMER_NO    NUMBER,
      PRODUCT_NO   NUMBER,
      ORDER_DATE   DATE );


-- 테이블 수정 
ALTER TABLE CUSTOMER RENAME COLUMN ID TO CUSTOMER_ID;
ALTER TABLE PRODUCT ADD MANUFACTURE VARCHAR2(20);
ALTER TABLE CUSTOMER MODIFY ADDRESS VARCHAR2(20) NOT NULL;


-- 제약조건 
ALTER TABLE CUSTOMER ADD CONSTRAINT CUSTOMER_PK PRIMARY KEY(CUSTOMER_NO);
ALTER TABLE PRODUCT ADD CONSTRAINT PRODUCT_PK PRIMARY KEY(PRODUCT_NO);
ALTER TABLE ORDERS ADD CONSTRAINT ORDERS_PK PRIMARY KEY(ORDER_NO);
ALTER TABLE ORDERS ADD CONSTRAINT CUSTOMER_ORDERS_FK FOREIGN KEY(CUSTOMER_NO) REFERENCES CUSTOMER(CUSTOMER_NO);
ALTER TABLE ORDERS ADD CONSTRAINT PRODUCT_ORDERS_FK FOREIGN KEY(PRODUCT_NO) REFERENCES PRODUCT(PRODUCT_NO);

'국비 > SQL' 카테고리의 다른 글

PL/SQL_프로시저/트리거/함수  (0) 2021.09.21
INLINE VIEW 와 ROWNUM  (0) 2021.09.14
SQL_DDL, DML, DCL  (0) 2021.09.08

댓글