#23

조성현·2023년 3월 30일

Execution plan

query optimizer
-query tunning

DDL
데이터베이스
create
alter
테이블
문자형
char 고정
varchar 가변
tinytext / text / mediumtext / longtext
숫자형
정수형 int
실수형 decimal / double
날짜형
datetime / date
이진 데이터
X(거의 쓸 일없음)

DML
insert
update
delete

데이터베이스 생성


데이터베이스 삭제


테이블 생성



테이블 삭제

테이블 복제

원하는 컬럼 선택하여 복사하기



가공된 컬럼까지 선택하여 복사하기

다른 테이블 내용 가져오가

alter

컬럼 컬럼수정 컬럼삭제

컬럼 추가
-> 항상 맨 밑에 추가됨

사이즈 조절
-> 줄이는 건 에러발생
컬럼 이름 변경

삭제

테이블 이름변경

insert

insert into 테이블명 values (값1, 값2)
값의 순서는 칼럼의 순서와 동일
자료형 크기 주의
문자열은 ''표시(숫자는 자동 형 변환처리 돼서 상관없음)

insert into 테이블명 (컬럼명, 컬럼명) values (값1, 값2)

필수요소
null / not null - null 허용여부

default

여러 데이터 삽입

???

update

update 테이블명 set 컬럼명 = 값 => 컬럼내용 전체 변경




update 테이블명 set 컬럼명 = 값 where 조건 => 해당 조건부분 변경

ex) 직책이 clerk이고 부서번호가 20인 사원에 대한 comm을 1000.0으로 변경

delete

delete from 테이블명 => 테이블 전체 내용 삭제

delete from 테이블명 where 조건 => 특정행(컬럼) 삭제

!!주의!!
컬럼의 내용을 지울 땐 delete로 쓰면 아예 삭제가 되기 때문에 updatenull로 만듦

예제

  1. 테이블 생성

  2. phone 추가

  3. email 사이즈 수정

  4. address 삭제

제약조건(테이블에 입력할 데이터 제한) - constraint

  1. 필수 입력 - not null
  2. 중복 방지 - unique
  3. 필수+중복 - primary key(테이블당 1개 Ex. 고유번호) not null + pk/auto_incremaent
  4. 참조 - foreign key
  5. 값에 대한 검사 - check (mariadb엔 없다)

    제약 조건 확인
    desc 테이블명
    information_schema >> table_constraints

기술방식

테이블 단위 제약조건

컬럼 단위 제약 조건

unique

data는 중복 불가 null은 중복 허용

primary key

0개의 댓글