네이처리 노트
[Mysql] 데이터테이블의 필드타입, 제약조건, 인덱스 본문
728x90
반응형
공부하면서 정리한 내용입니다
참고한 내용은 링크를 확인해주세요
-
필드타입 COLUMN TYPE
데이터타입이라고도 하고, 테이블의 컬럼구조를 정의할 때 사용한다.
숫자
TINYINT / SMALLINT / MEDIUMINT/ INT / BIGINT | 정수 (integer types) |
INT( INTEGER) / SMALLINT | 표준정수 🚩 |
SIGNED | 정수 음수까지 표현할 수 있는 타입 |
UNSIGNED | 정수 양수만을 표현할 수 있는 타입 |
DEMICAL | 고정소수점 (fixed-point types) |
FLOAT / DOUBLE | 부동소수점(floating-point types) |
BIT | 비트값 (bit-value type) |
문자열
CHAR / VARCHAR | 공통점 - 1 에서 255 글자 - BINARY 키워드가 주어지지 않을 경우 대소문자 구분없이 검색한다. 차이점 CHAR(20)은 컬럼에 10글자만 저장하더라도, 20자만큼의 기억장소를 차지한다. 반면 VARCHAR(20)은 10글자 만큼의 기억장소를 차지한다. |
BINARY / VARBINARY | 각 CHAR / VARCHAR 유형과 비슷하지만, 이진 바이트 문자열을 이진이 아닌 문자열로 저장 |
TEXT | 최대 65535 글자 |
날짜와 시간
DATE |
|
DATETIME |
|
TIMESTAMP |
|
TIME |
|
YEAR |
|
제약조건 Constraint
데이터를 입력받을 때 실행되는 검사 규칙
NOT NULL | 이 제약 조건이 설정된 필드는 무조건 데이터를 가지고 있어야 합니다. |
UNIQUE | 이 제약 조건이 설정된 필드는 중복된 값을 저장할 수 없습니다. |
PRIMARY KEY | 이 제약 조건이 설정된 필드는 중복된 값을 저장할 수 없습니다. |
FOREIGN KEY | 테이블가 테이블을 연결해주는 역할을 합니다. UNIQUE나 PRIMARY KEY 제약 조건이 설정되어 있어야 합니다. |
DEFAULT | 해당 필드 값을 전달하지 않으면, 설정한 기본값을 자동으로 저장합니다. |
AUTO INCREMENT | 해당 필드 값의 전달하지 않으면, 자동으로 수를 증가하여 추가한다. |
인덱스 Index
테이블에 인덱스 추가
ALTER TABLE [테이블명] ADD INDEX [인덱스명](column1, ...);
인덱스 추가 생성
CREATE INDEX [인덱스명] ON [테이블명](column1, ...);
인덱스 확인
SHOW INDEX FROM [테이블명];
인덱스 삭제
ALTER TABLE [테이블명] DROP INDEX [인덱스명];
728x90
반응형
'개발기록 > Mysql' 카테고리의 다른 글
[Mysql] where절로 조건 검색하기 (0) | 2022.10.07 |
---|---|
[Mysql] select 작성 순서와 where 실행 순서 (0) | 2022.10.07 |
[Mysql] CRUD 코드 및 예제 (1) | 2022.10.07 |
[Mysql] 데이터테이블 내장함수 (0) | 2022.10.06 |
[Mysql] DB와 Table 확인, 변경하기 | SHOW, ALTER TABLE (0) | 2022.10.06 |
Comments