- 정수형은 소수점이 없는 숫자, TYNIINT, SMALLINT, INT, BIGINT 4가지이다.
- 예약어 UNSIGNED[ 값의 범위가 0 부터 시작 ] 사용시
TINYINT [ -128 ~ 127 ]
TINYINT UNSIGNED [ 0 ~ 255 ]
- 숫자범위를 벗어나면 "Out of range" ERROR 발생
- 그외 BIT, MEDIUMINT 사용빈도낮음 - 문자형은 고정형 문자형 CHAR, 가변형 문자형 VARCHAR 2가지이다.
- 전화번호 처럼 '010-**' 제일 앞에 0으로 시작 할때 정수형으로 지정하면 0이 사라지므로 문자형으로 지정
또한 연산을 하지않아서 숫자로서의 의미가 없을때 - 대량의 데이터 형식
CREATE TABLE error_table_example (
data1 CHAR(256),
data2 VARCHAR(16384) );
오류 메시지
Error Code : 1074. Column length too big for column 'data1' (max=255);
use BLOB or TEXT instead
data1 의 지정 숫자가 최대 범위 255보다 크다 BLOB 또는 TEXT를 사용하라는 에러다.
data1을 255로 했어도 data2가 에러가 발생하였을 것이다.
- BLOB은 Binary Long Object의 약자로 글자가 아닌 이미지, 동영상 등의 데이터
이진(Binary)데이터라고도 부른다.
테이블에 사진, 동영상등을 저장 가능하다.
종류는 BLOB, LONGBLOB 이 있다.
- 실수형은 소수점 아래 7자리까지 표현 FLOAT, 소수점아래 15자리까지 표현 DOUBLE 2가지이다.
- 날짜형은 날짜 DATE, 시간 TIME, 날자와 시간 DATETIME 3가지이다.
- MySQL 제공 변수 앞에 '@'를 붙인다.
- 데이터형식을 변경하는 형 변환 함수에는 CAST(), CONVERT()가 있다.
정수형
데이터형식 | 바이트 수 | 숫자 범위 |
TYNIINT | 1 | -128 ~ 127 |
SMALLINT | 2 | -32,768 ~ 32,767 |
INT | 4 | 약 -21억 ~ +21억 |
BIGINT | 8 | 약 -900경 ~ +900경 |
문자형
데이터형식 | 바이트 수 |
CHAR | 1~255 |
VARCHAR | 1~16383 |
대량의 데이터 형식
데이터형식 | 바이트 수 | |
TEXT 형식 | TEXT | 1~65535 |
LONGTEXT | 1~4294967295 | |
BLOB 형식 | BLOB | 1~65535 |
LONGBLOB | 1~4294967295 |
실수형
데이터 형식 | 바이트 수 | 설명 |
FLOAT | 4 | 소수점아래 7자리까지 표현 |
DOUBLE | 8 | 소수점아래 15자리까지 표현 |
날짜형
데이터 형식 | 바이트 수 | 설명 |
DATE | 3 | 날짜만 저장. YYYY-MM-DD 형식으로 사용 |
TIME | 3 | 시간만 저장. HH:MM:SS 형식으로 사용 |
DATETIME | 8 | 날짜 및 시간을 저장. YYYY-MM-DD HH:MM:SS 형식으로 사용 |
'ㆍDatabase' 카테고리의 다른 글
[PostgreSQL] 내가 날린 쿼리로 DB 뻗었을때 (0) | 2022.05.03 |
---|---|
[오라클/ORACLE]테이블삭제/절단/복구 - DROP/TRUNCATE/FLASHBACK (0) | 2021.09.13 |
[oracle/오라클] check 제약조건 (0) | 2021.09.13 |
[오라클/oracle] like 비교연산자 & 연습문제 (0) | 2021.09.11 |
[오라클/oracle] 서브쿼리 맛보기 (0) | 2021.09.11 |