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

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

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

  • 인기 글

  • 태그

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

  • 최근 글

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

티스토리툴바