MYSQL -DDL(데이터 정의어)

2022. 5. 6. 12:51·STUDY/DATABASE
반응형
DDL    : creat, alter, drop, truncate
   객체(object)를 생성, 수정, 삭제하는 명령어
   객체 종류 - table, view, index 등
  DDL구문은 autocommit을 내포함 => 취소 x

1. 테이블 생성(create table)

   테이블 생성 시 필수 정보 : 테이블 명, 컬럼명, 데이터 타입(컬럼사이즈)

   옵션 : default 값, 제약 조건

 

1-1. 제약조건 없이 default 값으로 테이블 생성

 

1-2. default 값이 선언된 컬럼에 insert 작업하기 

      & default 값을 명시적으로 삽입하는 방법

 

1-3. default 값을 암시적으로 삽입하는 방법

 

1-4. default 값이 설정되어 있지 않은 컬럼에 default 옵션 사용 시 => null

 

1-5.  default값 사용해서 update 작업

 

* 서브쿼리 구문을 활용한 테이블 생성 작업(테스트용, 백업용으로 주로 사용)

 

* 형태만 복사하기

 


2. 제약조건 설정(alter table)

   제약조건 유형 : not null, unique, primarty, foreign key, check

 

2-1. not null 제약조건

     : 컬럼에 null 값을 허용하지 않는 제약조건 = > 값이 반드시 있어야 하는 컬럼에 지정

     : null 값 저장 시 고정 길이 문자형(char)은 공간을 모두 차지,

     : 가변길이 문자형(varchar)는 공간을 차지하지 x => null 값이 많이 입력되는 컬럼은 varchar사용을 권장

 

2-2. unique 제약조건

      : 중복되지 않는 값을 입력

      : 아이디, 주민번호, 이메일 등에 사용됨

 

2-3. primary key 제약조건

      : 테이블 행을 식별해 줄 수 있는 컬럼에 선언하는 제약조건 => 대표컬럼

      : not null + unique

 

 * 컬럼, 테이블 레벨 문법

    컬럼 레벨 문법 : not null, primary key, unique, check

    테이블 레벨 문법 : primary key, unique, check, foreign key

 

2-5. foreign key 제약조건

      : 두 테이블 사이의 관계를 선언=> 데이터의 무결성을 보장해 줌

      : 자기자신 테이블 or 다른테이블의 특정 컬럼을 참조

      : primary key, unique 제약조건이 선언된 컬럼만 참조 할 수 있음

      : foregin key(컬럼명) references 참조할 테이블 명(참조할 컬럼명)

 

2-6. check 제약조건

     : 해당 컬럼이 만족해야하는 조건을 지정

   


두 컬럼 조합 값에 primary key 설정

  1. title 테이블 생성

  *check 제약조건

 

title_copy 테이블 생성

2. copy_id와 title_id 의 조합 값에 primary key 값 생성

   constraint 조합 값 네이밍 primary key(컬럼1, 컬럼2)

반응형
저작자표시 (새창열림)

'STUDY > DATABASE' 카테고리의 다른 글

MYSQL - DDL(VIEW)  (0) 2022.05.13
MYSQL - ALTER  (0) 2022.05.10
MYSQL - 연습문제(DML)  (0) 2022.05.02
MYSQL - TCL(트랜잭션제어어)  (0) 2022.05.02
MYSQL - DML_데이터 삭제(delete)  (0) 2022.05.02
'STUDY/DATABASE' 카테고리의 다른 글
  • MYSQL - DDL(VIEW)
  • MYSQL - ALTER
  • MYSQL - 연습문제(DML)
  • MYSQL - TCL(트랜잭션제어어)
3unB
3unB
  • 3unB
    ILLILI
    3unB
  • 전체
    오늘
    어제
    • 분류 전체보기 (158)
      • STUDY (107)
        • JAVA (30)
        • SPRING (29)
        • JSP (11)
        • DATABASE (19)
        • HTML (0)
        • CSS (4)
        • GITHUB (2)
        • ETC (4)
        • 자격증 (1)
        • ERROR (6)
      • PROJECT (6)
        • Personal_Project 01 - commu.. (1)
        • TeamProject - JOINUS (4)
      • EUNB (30)
        • 맛집 (27)
        • 여행 (3)
        • 전세사기 (0)
      • 오블완챌린지 ++ (11)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • 짱민지
    • 아랄이
  • 공지사항

  • 인기 글

  • 태그

    속초 숙소 내돈내산
    센텀 신세계백화점 팝업
    전포 데이트
    서면 설야멱
    망미 바
    서면 맛집
    배열 한 컬럼에 넣기
    인제 두부
    망미 테린느
    전포 밥집
    Database
    전포 맛집
    속초 해변 숙소
    전포 신상 맛집
    오블완
    전포 오꼬노미야끼
    mysql
    인제 고향집
    전포동 카페
    전포 연어덮밥
    망미 카페
    oracle
    alter
    전포동 맛집
    전포동 핫플
    콩콩팥팥 맛집
    망미 조용한 카페
    속초 중앙시장 감자전
    콩콩팥팥 두부
    티스토리챌린지
  • 최근 댓글

  • 최근 글

  • 250x250
  • hELLO· Designed By정상우.v4.10.0
3unB
MYSQL -DDL(데이터 정의어)
상단으로

티스토리툴바