MySQL - 자료형, 외래키

박재현·2022년 3월 2일
0
post-custom-banner

🙏🏻 출처: https://www.yalco.kr/@sql/3-3/


왜래 키 제약

제약설명비고
NO ACTION, RESTRICT자식 테이블에 해당 외래키가 있을 때 수정/삭제되지 않음
CASCADE자식 테이블의 해당 행도 수정/삭제
SET NULL자식 테이블의 외래키를 NULL로자식 외래키가 NOT NULL일 시 설정 불가
SET DEFAULT자식 테이블의 외래키를 기본값으로InnoDB 엔진에서 사용 불가

1. 숫자 자료형

🔎 정수

자료형바이트SIGNEDUNSIGNED
TINYINT1-128 ~ 1270 ~ 255
SMALLINT2-32,768 ~ 32,7670 ~ 65,535
MEDIUMINT3-8,388,608 ~ 8,388,6070 ~ 16,777,215
INT4-2,147,483,648 ~ 2,147,483,6470 ~ 4,294,967,295
BIGINT8-2^63 ~ 2^63 - 10 ~ 2^64 - 1

🔎 고정 소수점(Fixed Point) 수

  • 좁은 범위의 수 표현 가능, 정확한 값
    자료형설명범위
    DECIMAL( s, d )실수 부분 총 자릿수( s ) & 소수 부분 자릿수 ( d )s 최대 65

🔎 부동 소수점(Floating Point) 수

  • 넓은 범위의 수 표현 가능, 정확하지 않은 값(일반적으로는 충분히 정확, 고정 소수점과 비교했을 때 기준)

    자료형표현범위
    FLOAT-3.402...E+38 ~ -1.175...E-38 , 0 , 1.175...E-38 ~ 3.402...E+38
    DOUBLE-1.797...E+308 ~ -2.225E-308 , 0 , 2.225...E-308 ~ 1.797...E+308

2. 문자 자료형

🔎 문자열

자료형설명차지하는 바이트최대 바이트
CHAR( s )고정 사이즈 (남는 글자 스페이스로 채움)s (고정값)255
VARCHAR ( s )가변 사이즈실제 글자 수[최대 s] + 1 [글자수 정보]65,535
  • 검색시 CHAR가 더 빠름
  • VARCHAR 컬럼 길이값이 4글자보다 적을 경우 CHAR로 자동 변환

🔎 텍스트

자료형최대 바이트 크기
TINYTEXT255
TEXT65,535
MEDIUMTEXT16,777,215
LONGTEXT4,294,967,295

2. 시간 자료형

자료형설명비고
DATEYYYY-MM-DD
TIMEHHH:MI:SSHHH: -838 ~ 838까지의 시간
DATETIMEYYYY-MM-DD HH:MI:SS입력된 시간을 그 값 자체로 저장
TIMESTAMPYYYY-MM-DD HH:MI:SSMySQL이 설치된 컴퓨터의 시간대를 기준으로 저장
  • 시간 데이터를 가감없이 기록할 때 DATETIME (역사적인 사건 등)
  • 시간 자동기록, 국제적인 서비스를 할 경우 TIMESTAMP 사용 (댓글, 게시판 기록)
post-custom-banner

0개의 댓글