숫자
(정수)
- BIT(m) : 1~64 binary값을 지정
- BOOL : TRUE(1) / FALSE(0) = TINYINT(1)
- TINYINT(m) : 0~255사이의 작은 수를 표현 (-128~127)
- SMALLINT(m) : 2BYTE 0~65536 (-32768 ~ 32767)
- MEDIUMINT(m) : 3BYTE (0~166777215)
- INT(m) : 4BYTE => java int 동일
- BIGINT : 8BYTE => java long 동일
(실수)
- FLOAT(m, d) : 정밀도가 작은 부동소수점 표현(d : 자리수)
- DOUBLE(m, d) : 정밀도가 큰 부동소수점 표현(d : 자리수)
=> mysql 8.0.17 이후부터 사용하지 않음
- DECIMAL(m,d) : 고정 소수점 표현
문자
- CHAR(m) : 고정길이 문자열(0~255)
- VARCHAR(m) : 가변길이 문자열 (0~65536)
- TINYTEXT : 가변길이 1BYTE 문자열 저장
- BLOB : 바이너리 데이터 저장용 (이미지) (TINYBLOB, MEDIUMBLOB 등등 있음)
- TEXT : 2Byte 가변길이 문자열
- MEDIUMTEXT : 3BYTE
- LONGTEXT : 4BYTE
날짜
- DATE : 날짜표현
- DATETIME : 날짜+시간 => 가장많이 씀
- TIMESTAMP : insert, update 연산에 유리한 형태
- YEAR : 연도만
- TIME : 시간만
제약조건
PK : PRIMARY KEY => 기본키 속성 추가
NN : Not Null (데이터 값으로 null을 오지 못하게 막음)
AI : Auto_Increment (자동증가 : 정수만 가능) => MySQL에서만 씀. 오라클엔 없다.
UQ : unique (중복안됨)
B : binary 값
UN : Unsigned (음수 불가)
ZF : Zero Fill (숫자 앞에 0으로 채우기) ex) 0001
G : Generated (속성 자동생성)
기본값 : default 값
기본값을 주지않고 값이 없으면 null (null 은 연산이 안됨.)
주석 : 단축키 안됨.
/* 여러줄 주석 */
-- 한줄주석
'백엔드 > MySQL' 카테고리의 다른 글
| MySQL 테이블 생성, 데이터 추가, 조회(2) (0) | 2024.08.29 |
|---|---|
| MySQL 테이블 생성, 데이터 추가, 조회(1) (3) | 2024.08.28 |
| cmd로 mySQL 실행, 유저 생성, 권한 부여, 유저 목록 확인 (1) | 2024.08.27 |
| Workbench로 mySQL 실행, 유저 생성, 권한 부여, 유저 목록 확인 (0) | 2024.08.27 |
| MySQL 환경 변수 설정 (0) | 2024.08.27 |