본문 바로가기
DBMS(SQL)

DBMS실습 - CREATE, ALTER, DROP(2,3일차)

by JoinInNoetic 2023. 10. 9.

CREATE 문

    ● 데이터베이스와 테이블(Relation)을 제작하는 SQL

    ● 생성

        - 데이터베이스 생성

            CREATE DATABASE [데이터베이스 명]

 

        - 테이블 생성

            CREATE TABLE [테이블 명] (

                       [column 명] [데이터 type](size) [옵션]

                    );

 

        ※ 데이터유형(데이터 type, 자료형; 자주쓰는 유형)

                - 숫자형 : INT, FLOAT

                - 문자형 : CHAR, VARCHAR, TEXT

                - 날짜형 : DATE, DATETIME, TIMESTAMP

 

        ※ 옵션의 종류

                - NOT NULL : NULL값(아무 데이터도 없는 값)이 들어가지 않아야함

                - UNIQUE : 해당 테이블에서 하나인 유일값이 들어가야 함

                - PRIMARY KEY : NOT NULL과 UNIQUE의 조합 / 기본 키라고 부름

                - FOREIGN KEY : 다른 테이블의 속성을 참조하기위한 옵션 / 외래 키라고 부름

                - DEFAULT : 아무것도 쓰지 않을시 DEFAULT값으로 정해진 값이 입력됨

 

        ※ PRIMARY KEY(기본 키)와 FOREIGN KEY(외래 키)

            ● PRIMARY KEY(기본 키)

                    - 다른 항목과 절대로 중복되어 나타날 수 없는 단일 값

                    - 절대로 NULL이 될 수 없음

                    - EX) 주민등록번호 -> 동일 번호 불가능, 모두 다 있음

 

             ● FOREIGN KEY(외래 키)

                    - 두 개의 테이블을 연결해주는 다리 역할

                    - 새롭게 추가되는 데이터(튜플)에서 외래 키에 해당하는 값이 참조하는 테이블에 존재하는지 체크

                    - EX) 주문 데이터를 넣으려고 할 때 회원 테이블에 아직 가입하지 않은 아이디일 때 오류

 

           ex)

           > create database sample_DB;

           > use sample_DB;

           > create table sample_table(

                    sample_col1 varchar(10) not null

               );

SHOW : DATABASE 목록

USE : 작업환경을 해당 데이터베이스로 변경 혹은 설정

DESC : 해당 테이블의 설정값 확인

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

< sample_table >

 

sample_col1
 
 

< Persons >

 

PersonID
LastName
FirstName
Address
City
 
 
 
 
 
 
 
 
 
 

 

SELECT : 해당 테이블 *(모든 COLUMN) 출력

INSERT : 해당 테이블의 COLUMN(col1, col2)에 값(60, 'bye') 입력

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

< sample_table >

 

col1
col2
col3
col4
 
 
 
 
 
 
 
 

 

< sample_table2 >

 
col2_1
col2_2
col2_3
col2_4
 
 
 
 
 
 
 
 

 

ALTER 문

    ● 테이블, 데이터베이스 이름 및 설정값, 속성 등을 추가 및 삭제, 변경

    ● 삭제

        ○ 테이블의 COLUMN 삭제

            - ALTER TABLE [테이블 명] DROP COLUMN [컬럼 명];

    ● 추가

        ○ 테이블의 COLUMN 추가

            - ALTER TABLE [테이블 명] ADD (COLUMN) [컬럼 명] [설정값];

 

    ● 이름 변경

        ○ 테이블의 COLUMN 이름변경

            - ALTER TABLE [테이블 명] RENAME COLUMN [기존이름] TO [변경될 이름];

        ○ 테이블 이름변경

            - ALTER TABLE [테이블 명] RENAME TO [변경될 이름];

 

 

    ● 데이터 타입 변경

        ○ 테이블 COLUMN 데이터 타입 변경

            - ALTER TABLE [테이블 명] MODIFY COLUMN [컬럼 명] [설정값];

 

    컬럼명과 데이터 타입 변경

        ○ 테이블의 COLUMN 명과 데이터 타입 변경

            - ALTER TABLE [테이블 명] CHANGE COLUMN [기존이름] [바꾸려는 이름] [새로운 데이터 타입];

 

    키 변경

        ○ 키 삭제

            - ALTER TABLE [테이블 명] DROP PRIMARY KEY;

        ○ 키 지정

            - ALTER TABLE [테이블 명] ADD PRIMARY KEY(컬럼명);

 

    ● primary key 삭제 및 추가

 

DROP 문

    ● 데이터베이스 또는 테이블 삭제

        - DROP DATABASE [데이터베이스 명];

        - DROP TABLE [테이블명];